Android作为客户端,PC作为服务端:实现网络通信
此项目实现网络通信,android手机客户端去请求PC服务端,将PC上mysql中的数据显示在手机上。
PC服务端用JavaWeb写了个servlet,android手机客户端请求这个servlet,由servlet执行查询数据,并返回给手机客户端,服务器为Tomcat。
为了更清楚的展示,咱们现在mysql建一个测试表test
插入几条记录,我们这里插入汉字,遇到乱码,我们可以去解决。
插入成功
闲话少说,直接上代码:
PC服务端
我用MyEclipse建立了一个JavaWeb项目,这个项目中主要由一个数据查询类DBManager.java和一个servlet(loadMessage.java)组成
DBManager.java
Android手机客户端代码:
AndroidClientActivity.java
HttpUtil.java
当然还得在AndroidManifest.xml中加入网络访问权限:
需要注意的写服务器的主机号时,千万不能写localhost或者127.0.0.1,因为Android模拟器虽然和服务端程序在同一台电脑上,但两个毕竟是独立的系统,我们可以用10.0.2.2去访问本机。
运行结果:
这是在模拟器上运行,有的同学有这样的想法,把ip改成自己电脑真实的Ip,把客户端拿到真机上去实验,但运行后会发现会显示“网络异常”,不能访问。这里涉及到了网络方面的问题,其实也非常简单。下篇博客将会详细的讲解,去解决这个问题。