首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络协议 >

Android作为客户端,PC作为服务端:兑现网络通信

2012-06-20 
Android作为客户端,PC作为服务端:实现网络通信此项目实现网络通信,android手机客户端去请求PC服务端,将PC

Android作为客户端,PC作为服务端:实现网络通信

此项目实现网络通信,android手机客户端去请求PC服务端,将PC上mysql中的数据显示在手机上。

   PC服务端用JavaWeb写了个servlet,android手机客户端请求这个servlet,由servlet执行查询数据,并返回给手机客户端,服务器为Tomcat。

  为了更清楚的展示,咱们现在mysql建一个测试表test

 


插入几条记录,我们这里插入汉字,遇到乱码,我们可以去解决。


 

插入成功

Android作为客户端,PC作为服务端:兑现网络通信

 

闲话少说,直接上代码:

 

 

PC服务端

  我用MyEclipse建立了一个JavaWeb项目,这个项目中主要由一个数据查询类DBManager.java和一个servlet(loadMessage.java)组成

 

DBManager.java


 

loadMessage.java

 

 

Android手机客户端代码:

AndroidClientActivity.java


 

HttpUtil.java


 

当然还得在AndroidManifest.xml中加入网络访问权限:


 

需要注意的写服务器的主机号时,千万不能写localhost或者127.0.0.1,因为Android模拟器虽然和服务端程序在同一台电脑上,但两个毕竟是独立的系统,我们可以用10.0.2.2去访问本机。

 

运行结果:

Android作为客户端,PC作为服务端:兑现网络通信

 

这是在模拟器上运行,有的同学有这样的想法,把ip改成自己电脑真实的Ip,把客户端拿到真机上去实验,但运行后会发现会显示“网络异常”,不能访问。这里涉及到了网络方面的问题,其实也非常简单。下篇博客将会详细的讲解,去解决这个问题。

 

 

 

 

3楼enhancing前天 17:37
String result = HttpUtil.queryStringForPost("http://10.0.2.2:8080/androidWeb/servlet/loadMessage"); nnn能解释一下里面url的含义吗?androidWeb/servlet/loadMessage是什么路径?
Re: pzhtpf前天 22:09
不好意思啊!本来想上传项目的,给忘了!androidWeb表示的web应用程序的名称,servlet表示请求servlet文件,而后面的loadMessage为请求的servlet的名称。
2楼zouzhongy前天 11:41
这个是个方向啊。。。。
1楼enhancing4天前 12:46
如何实现电脑控制手机呢?
Re: pzhtpf4天前 12:50
未来物联网应该是一个发展方向,用手机去控制家里的各种电器等等!哥们倒 倒过来想了!
Re: enhancing4天前 15:13
是的,今年2月份的移动世界大会已经提到关于手机控制家电即将兴起,移动通信行业在未来将进入人们的整个生活当中。这是一个趋势。不过服务器控制终端设备也未尝不是一件我们值得去研究的技术。回复pzhtpf
Re: pzhtpf4天前 16:03
前景都很广阔,值得我们去研究!
Re: meng_qing_shan4天前 21:44
回复enhancingn哥们的思路比较好,用手机做服务器,。
Re: enhancing前天 11:00
我也是这么想的,但是目前手机上还没有出现类似于电脑上的tomcat服务器,如何在手机上部署服务器是一个问题~回复meng_qing_shan

热点排行