日期:2014-05-20  浏览次数:20586 次

纯小白问下:如果我想把一组数据上传到服务器,是用socket实现么?
情况是这样的,现在有个实验室把野外监测数据上传到服务器上,这个是用socket实现么?如果不是,应该怎么实现呢?纯小白,多谢!

------解决方案--------------------
上传数据的终端是什么?PC?手持式移动设备还是什么?
上传的话用webservice比较理想。
------解决方案--------------------
那用webservice就可以了。
------解决方案--------------------
这个要看服务器用什么方式接收这些数据了。

一般有这么几种:
1.动态页面(HTTP形式)
   就是部署个Tomcat,写个JSP页面,通过访问这个页面,将发送的信息当做参数发送过去,页面进行数据处理
2.Webservice形式
   服务端编写一个WS接收数据的接口,客户端通过这个WS接口将数据发送过去。
3.JMS形式
   服务端部署一个JMS的框架环境,一般JMS的实现框架都提供简单的demo,客户端把发送的数据转换成消息,通过JMS发送到服务端。
4.Socket形式
   具体通信的方式和数据结构(即:协议)需要自己定义,服务端监听一个端口,并开放IP,客户端连接上去,通过Socket发送数据。

------解决方案--------------------
野外数据的采集,一般都用单片机来做。

如果要将采集的数据上传至服务器,就要看单片机具体所配备的硬件设施了。
如果上面有手机卡,就可以考虑GPRS或者3G上网,来发送数据;如果上不了网,就以短信的形式传数据,但是,短信费比较贵。

除了硬件设备要可以入网之外,还要看楼主是想传数据呢,还是把数据写到文件里传输文件呢。
如果传输文件的话,除了HTTP上传文件之外,还可以考虑FTP形式的上传文件。
只要文件名不产生冲突就可以实现。