Android手机客户端与Web服务器的通信

一、Android手机访问Web服务器

大多数中间件技术开发人员熟悉如何用计算机浏览器访问互联网,浏览器的主要作用是给互联网的Web服务器提交数据、验证数据和解析显示数据。其工作原理是通过Http协议.提交数据用GET或者POST方法,客户端的数据通过浏览器网页提交给web应用服务器,应用服务器通过Web页面接收各种不同类型数据,将数据通过服务器的Servlet子类HttpServlet对象提交给服务器端处理逻辑.服务器逻辑将接收到的数据按照客户端的要求在Web服务器端进行运算再将运算的结果返回给客户端浏览器进行解析和显示。这里关键是Web服务器端的Servlet.它是服务器和客户端交互据的服务器端端口,即所有客户端的数据都要通过Servlet提交给Web服务器.所有要返回给客户端的数据都要通过Web服务器端的Servlet响应给客户端。在实际应用的服务器端,创建Servlet的子类对象HttpServlet(HttpServletRequestHttpServletResponse),分别用来接收客户端的数据和将数据返回给客户端。现在的问题就在Android手机终端.如何能够把客户的数据通过手机界面提交给Web服务器?Android手机终端访问Web服务器的技术架构是怎样的?又如何能够在手机终端把web服务器响应的数据按照服务器的不同数据类型恢复原型?这就是下面要解决的问题

11手机客户端向Web应用服务器发送请求信息

以实际开发的Android手机终端登录功能为案例介绍如何利用Sun公司提供的java数据流和过滤流结合Android提供的API提取Web服务器端不同类型的数据。

1)首先引用所需要的各种APIAndroid手机终端开发应用程序时.首先需要利用GoogleSun公司提供的必要类包(API),包括http通信协议类org.apache.http,*消息类orgapachehttpMessage.*数据流类java.io.*android.app.Activity

2)定义访问网站的URL

3)创建Android程序界面类创建一个手机界面,需要继承Android提供的Activity,在该类中创建提交给Web服务器的数据 HttpPost对象。覆盖Activity类的方法on—Create(Bundleb),创建事件监听器OnClickListener对象,在其中实现onClick(Viewv)方法,再把该事件监听器注册到相应的事件源loginButton上。

4)创建HttpPost对象HttpPost对象的主要作用是将Android手机端的数据提交给Web应用服务器,为此Android提供了很好的API.这里就利用AndroidSun公司提供的这些类把需要提交给服务器的数据(NameValuePair对象)保存到一个List对象中。

5)设置数据编码方式Android手机在将准备好的数据发送到Web服务器之前,需要对数据的编码进行规定,这样服务器在接收到这些数据后,就会根据发送过去的文字编码处理和显示。

6) 提交HttpPost对象和获取服务器HttpResponse响应数据完成前面的工作,就该将数据提交给Web应用服务器了,在应用服务接收Android手机提交的数据后,经过处理,将要返回(响应)Android手机的数据打包到一个HttpRe-sponse对象中,发回给手机。

到此。Android平台的通信任务已完成,即将Web服务器相应过来的数据交给了httpResponse对象,剩下来的工作就是如何将Web 服务器响应过来的数据从httpResponse对象中取出。

12手机终端提取服务器端的响应数据

1)获取响应服务的数据从Web服务器响应到手机终端的数据一般包在一个字节数组中,关键是这个字节数组中可能包含了各种不同的数据类型,为此,需要采取Java数据流和过滤流的方法从字节数据中取出各种类型的数据。这是需要实现的关键技术。

到此手机终端从Web服务器获取了所有类型的数据.剩下的任务就是将这些数据进一步交给Android手机终端View组件,在手机界面上显示给用户。

二、服务器端接收和响应Android手机终端请求

Android手机终端发送请求后,接收请求的web服务器端会根据请求的数据信息进行运算,然后把运算结果响应给手机客户端。下面介Web服务器如何实现这一过程的。

2.1采用httpPost方法接收数据

1)引用所需APIWeb端开发应用程序时,首先需要利用Sun公司提供的必要类包(API),包括数据流类java.io.*交互界面类java.utiL.*数据通信端口类javax.servlet.*通信协议类javax.servlet.http.Spring架构通过XML文件注入数据对象类org.springfamework.web.context.*org.springframe-work.web.context.support.*service.CustomerServiee

2) 创建Servlet类数据端口

创建Servlet对象就是创建了Web应用服务器和连接互联网上所用客户端通信设备的数据接收和发送端口。

3 )访问持久层检索数据

这里应用已经完善的Spring管理事务的对象方法来获取持久层的数据。

4)创建输出流数据流对象这里创建的输出流对象主要是把响应的数据发送到手机端,由于可能是不同类型的数据,所以采用DataOutputStream对象来处理,用输出过滤流对象将不同类型的数据返回手机终端。

2.2配置服务器端组件集成文件(XML)

Web应用服务器端用到的是SSH架构技术,服务器的业务逻辑已经成熟,只需要将Spring的业务通过前述的Servlet进行封装.就可以将所有的Spring管理的事物业务通过ServletAndroid手机进行交互,方法是在SpringApplicationContext.xm文件中增加相应的的配置即可,这样服务器响应给手机终端的数据处理部分完毕,一次交互过程完成。



  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值