Android客户端与Web服务通信方式探讨

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:javapages
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:Android智能手机作为当今流行的移动互联网客户端,已广泛应用于各种生产生活领域内,对信息数据的快速传播与知识交流起了极大的促进作用。移动互联网的广泛普及与应用,带来了手机客户端与应用服务之间连接与传输数据的问题。该文提出了两种数据交换方式,提高了数据传输与应用效率。服务器采用Servlet接口处理,可以快速高效的进行数据处理。XML数据格式具备规范性和高识别效应,可以在小容量多种类的数据传输中使用。JSON数据格式由于具有文本特性,能够更好处理大容量数据传输。
  关键词:Android通信;Android应用开发;Servlet通信
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2019)04-0054-02
  1 手机客户端与应用服务器的请求响应过程
  近年来,随着移动互联网在社会经济中的广泛应用,智能手机作为实用方便的客户端移动设备,已成为移动网络应用最重要的网络连接设备。Android作为智能手机的操作系统,被众多手机生产商所接受,同时基于它的应用软件几乎包涵了社会生活的各个领域,已成为当今影响力最强的操作系统之一。
  在与Android客户端进行交互数据的应用服务器处理上,Java Servlet是运行在Web服务器或应用服务器上的程序,作为来自客户端请求和应用程序之间的连接层。使用 Servlet,可以收集来自网页表单和其他客户端的用户数据,呈现来自数据库或者其他源的记录,并可以向客戶端返回执行后的数据。
  在与Android客户端进行交互数据的应用服务器处理上,Java Servlet是运行在Web服务器或应用服务器上的程序,作为来自Web浏览器或其他HTTP客户端请求和HTTP服务器上的数据库或应用程序之间的中间层。使用 Servlet,可以收集来自网页表单和其他客户端的用户数据,呈现来自数据库或者其他源的记录,并可以向客户端返回执行后的数据。Java Servlet具有以下优势:
  (1)Servlet在Web服务器的地址空间内执行。不必再创建一个单独的进程来处理每个客户端请求,提高了应用服务的效率和执行速度。
  (2)Servlet独立于平台操作,可以实现跨平台使用。
  (3)Servlet是安全可信任的。服务器上的Java安全管理器执行了一系列限制,以保护服务器计算机上的资源。
  (4)Java类库的全部功能对 Servlet 来说都是可用的。可以通过sockets和RMI机制与applets、数据库或其他软件进行交互。
  Servlet执行过程一般包括:
  (1)读取客户端(浏览器或手机)发送的显式的数据。
  (2)读取客户端(浏览器)发送的隐式的 HTTP 请求数据。这包括 cookies、媒体类型和浏览器能理解的压缩格式等。
  (3)处理数据并生成结果。这个过程可能需要访问数据库,执行RMI或CORBA调用,调用Web服务,或者直接计算得出对应的响应。
  (4)发送显式的数据(即文档)到客户端(浏览器或手机)。该文档的格式可以是多种多样的,包括文本文件(HTML 或 XML)、二进制文件(GIF 图像)、Excel 等。
  (5)发送隐式的HTTP响应到客户端(浏览器或手机)。这包括指出浏览器或其他客户端被返回的文档类型(例如 HTML),设置 cookies 和缓存参数,以及其他类似的任务。
  2 应用服务器响应XML格式数据的处理过程
  手机客户端连接Web服务器,向Servlet服务发出请求数据,然后接收服务响应后的XML格式数据,并进行数据解析。主要代码如下:
  (1)手机客户端向服务器发出数据,并接收返回的XML数据,进行处理。
  //客户端向服务器发送请求
  String urlString = 服务器地址 应用程序名 "ClassInfoServlet?action=操作类型";
  URL url = new URL(urlString);
  //接收服务器处理后的XML数据
  ......
  XMLReaderxr = 转换对象.getXMLReader();
  XML文件处理类XML处理对象 = new XML文件处理类();
  xr.setContentHandler(XML文件处理对象);
  //获取数据并转换成XML文件
  ......
  xr.parse(is);
  Return classInfoListHander.获取数据方法();
  其中XML文件处理类。其内容如下:
  public class XML文件处理类 extends DefaultHandler {
  //处理XML文件数据值
  public void characters(char[] ch, int start, int length) throws SAXException {
  //处理过程
  }
  //处理XML结束标签
  public void endElement(String uri, String localName, String qName) throws SAXException {
  //处理过程
  }
  //处理XML开始文档
  public void startDocument() throws SAXException {   classInfoList = new ArrayList();
  }
  //处理XML结束标签
  public void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException {
  //处理过程
  }
  }
  (2)Servlet服务接收客户端的请求,并进行数据处理。
  void doPost( ) throws ServletException, IOException{
  /*获取action参数,根据action的值执行不同的业务处理*/
  String action = request.getParameter("action");
  if(action.equals(请求类型)) {
  /* 获取请求参数,并执行具体的业务处理操作 */
  ......
  //向客户端返回XML数据
  StringBuffer sb = new StringBuffer();
  //建立返回数据的XML文档
  sb.append(开始标签).append("\r\n")
  .append(子项开始标签)
  .append(子项数据)
  .append(子项结束标签).append("\r\n")
  .append(子项开始标签)
  .append(子项数据)
  .append(子项结束标签).append("\r\n")
  ......
  sb.append(结束标签).append("\r\n");
  PrintWriter out = response.getWriter();
  out.print(sb.toString());
  }
  服务器的Servlet向Android客户端返回XML格式数据
  3 应用服务器响应JSON格式数据的处理过程
  手机客户端连接Web服务器,向Servlet服务发出请求数据,然后接收服务响应后的JSON格式数据,并进行数据解析,主要代码如下:
  (1)手机客户端向服务器发生请求数据,并接收返回的JSON格式数据,进行处理:
  String urlString = 服务器地址 应用程序名 "ClassInfoServlet?action=操作类型";
  urlString = "
其他文献
摘要:与安卓系统的应用相比,iOS系统的封闭性和苹果应用商店的审查机制保证了iOS应用相对安全,但是开发者往往会忽视保护用户的像银行账户、密码以及秘钥等敏感数据的重要性。分析了iOS应用面临的基本的三种威胁,逐一依次提供了避免这些问题的策略,让用户的隐私不容易由于开发者的不小心而被轻易地泄露。  关键词:iOS应用开发;隐私泄露;SSL锁定;逆向工程;应用安全  中图分类号:TP393 文献标识码
随着医学模式的转变和护理学科的发展,对护士素质提出了更高的要求,培养高素质德才兼备的优秀护理人才和带教老师是关键。我院从1997年开始应用目标管理理论,对护士素质实行德、
压光纸的外观工艺指标既受压光前的各种工艺参数的影响,也取决于压光机的设备性能和操作影响。从压光机的线压力、辊件磨削工艺、辊数、辊件温度等设备方面对影响纸幅压光效
介绍莱钢集团新疆有限公司轧钢厂棒材生产线自动控制系统的主要功能,重点阐述微张力及活套控制在轧制过程中的作用。
医院急诊管理既有一般科室的共性,也有其特殊性,特别是医疗保险制度改革后,急诊就诊与留观医疗保险费支付的比例不同,病人对急诊留观室的需求也在不断变化。按病情需要观察1d~3d的
采用投影寻踪法对当今世界的几种典型两栖装甲车辆性能指标进行综合评价,包括总重量、载员人数、输出功率、水上行进速度、陆上行进速度、路上行程等,并给出了这几款两栖装甲
[目的] 探讨以问题为基础的学习(pproblem-based learning,PBL)查房与病程护理查房在临床教学中的应用与实践。[方法] 将220名实习护生分为对照组和实验组,对照组单纯采用PBL查
随着社会的发展,能源和环境等一系列问题引起了人们普遍关注,特别是对节能和改善环境有着强烈的要求。循环流化床锅炉就是这一特定条件下的产物。