【技术实现步骤摘要】
一种面向移动终端与服务器数据交互方式的方法
[0001]本专利技术涉及一种数据交互技术,具体涉及一种面向移动终端与服务器数据交互方式的方法。
技术介绍
[0002]目前市场上主流的一种移动端与服务器端数据交互的方式为通过JSON格式的数据进行交互。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
[0003]移动端将需要请求的数据封装成JSON串,在请求的header中指定contentType为application/json,而服务器通过@RequestBody将JSON格式的字符串转为JAVA对象作为输入,经过业务处理后又将需要返回给移动端的JAVA对象转化成JSON格式的字符串,移动端最终对JSON字符串进行解析,形成需要展示的页面。
[0004]该方式存在的主要缺陷是:面对复杂数据结构时,第一终端提交的数据在第二终端获取时的数据失真问题。详细而言,由于移动终端和服务器端两者侧重的业务价值点不同,造成了两者数据结构上的差异,比如如图1所示,在第一终端提交JSON数据属性包含(a,b,c,d,e)到服务器端时,由于服务器端认为d和e没有实际业务价值而不进行持久化保存,最终只保存(a,b,c),那么在第二终端请求 ...
【技术保护点】
【技术特征摘要】
1.一种面向移动终端与服务器数据交互方式的方法,其特征在于,方法包括:步骤1:第一终端将数据封装成JSON格式的字节流字符串;步骤2:第一终端将封装成的字节流字符串作为JSON格式的一个属性提交至服务器;步骤3:服务器端从接收到的字节流字符串中解析JSON格式的数据,并单独存储字节流,将解析出的业务数据与单独存储的字节流建立索引关系;步骤4:服务器接收到第二终端发出的获取JSON格式数据的请求时,返回对应的JSON格式的字节流字符串;步骤5:第二终端在接收到JSON格式的字节流字符串后解析恢复成本地数据。2.根据权利要求1所述的面向移动终端与服务器数据交互方式的方法,其特征在于,在步骤1中,在第一终端提交数据至服务器之前,根据不同终端之间的数据一致性和连续性需求,选择性地将需要提交到服务器端的数据封装成JSON格式,并转化为字节流字符串。3.根据权利要求1所述的面向移动终端与服务器数据交互方式的方法,其特征在于,在步骤2中,服务器端的接口API额外提供jsonStream和jsonStreamVer属性,分别用来存储该字节流字符串及其版本,其中第一终端在提交JSON格式的业务数据的同时,将步骤1中封装的字节流字符串作为jsonStream属性,其中首次新增时jsonStreamVer为空,jsonStreamVer属性用于控制不同终端之间的数据同步及版本冲突问题。4.根据权利要求1所述的面向移动终端与服务器数据交互方式的方法,其特征在于,在步骤3中,服务器端接收到第一终端提交的数据后,解析步骤2所提交的JSON数据,首先根据业务数据的ID和jsonStreamVer属性的值来判断终端数据是否为首次接收该数据,如果是首次接收,则将业务数据对应的属性按照业务规则处理后存入相应业务数据表,随后将jsonStream字节流字符串与该业务数据ID值进行绑定后持久化存储到jsonStream表,并将该jsonStream字节流字符串的版本设置为1。5.根据权利要求1所述的面向移动终端与服务器数据交互方式的方法,其特征在于,在步骤4中,当第二终端请求服务器获取该业务数据时,服务器返回的JSON格式的数据包含该业务数据ID对应的jsonStream字节流字符串及其版本,其中JSON格式的返回参数只包含业务数据ID、jsonStream属性及版本属性,其他按业务需要额外返回。6.根据权利要求1所述的面向移动终端与服务器数据交互方式的方法,其特征在于,在步骤5中,当第二终端接收到服务器返回的数据后,首先与本地的业务数据ID对应的版本属性比对,如果本地不存在或者版本低于服务器版本,则需要将jsonStream逆向解析成JSON格式数据,再还原成第一终端的本地数据结构;如果本地版本不低于服务器版本,则说明第二终端的数据版本高于服务器版本,拒绝更新本次同步到的数据,以实现不同终端之间协同处理同一份数据,通过版本控制后不会产生数据不一致及版本冲突问题。7.一种面向移动终端与服务器数据...
【专利技术属性】
技术研发人员:黄黎卿,张恩辉,施华刚,曲伟成,陈冠南,李福娟,宋健敏,将本朋,张力,赵书星,杨建勇,陈艺丹,俞琪,孙程,
申请(专利权)人:中国东方航空股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。