- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
json与后台进行数据通信.doc
How tocommunicate with server via JSON
?
?
引言
?
EXT技术对提升用户体验有着先天的优势,很多机构和个人都开始学习EXT技术,截止今天EXT CORE 3.0 也已经发布,EXTJS 3.0 指日可待。虽然性能越来越让人担忧。。。
?
无论用多么惊天地泣鬼神的前台技术,与后台的通信总是必须的。本文就目前手头上有的资料和经验来大概阐述一下EXTJS和后台通信这点事。
?
?
为什么要用JSON?
?
?选中JSON不是一拍脑门子的事。EXTJS也不是只支持JSON。目前常用的不外乎下面几种通信方式:
?
?
1. 动态语言文件周转,如JSP用JSP一类的动态语言文件中转数据无疑是传递数据比较简单的一种,但是不好传递对象。随便举个用Session传递数据的例子。例如:varUserName= %=session.getAttribute(user)%;if(UserName==null){location.href = login.jsp;}缺点就是不能方便的传递对象。不那么舒服,EXT的不彻底。还在混杂使用JSP这种相比与EXT来说老掉牙的东西。 当然,如果项目条件不允许,或者不需要做成彻底的AJAX OnePage应用。这种方式还是可以解决很多迫在眉睫的问题的。(我是彻底的One Page 狂热者^.^)
?
2. JSONJSON是和JavaScript门当户对的数据传输方式,所以用起来会很舒服。而且他可以很方便的传递对象,EXT也对JSON支持的很全面。所有的数据传递需求他都可以胜任。现在第三方的JSON框架也很成熟。
?
3. XMLEXTJS本身是提供对XML类型数据的解析功能的,和JSON一样。 官方的示例程序也有专门演示XML数据通信的。个人感觉和JSON是同一个级别的,也是比较推荐的方式。
?
4. 文本异步调用返回的东西是文本,说白了AJAX就是靠文本传输数据的,无论JSON还是XML,他都是文本。所以文本很牛的。如果弄好了,自己定义一个传输格式也不是不可以。一般不复杂的东西,比如传个标记,传个string什么的。没必要用JSON,用文本就很好用。缺点已经说了,就是无法胜任稍复杂的通信需求。
?
所以目前看来就在JSON和XML中选择一个了。XML以后再表,我们现在主要表JSON。
?
通信过程
?
?
?
从后台到前台
?
看一下通信过程中的图,其中对象我们已经有了,也就是你想要传递的东西。剩下的,就是后台如何把对象转换成JSON,以及前台如何把JSON再解析为对象了。我们先来看后台如何把对象转换成JSON。
?
首先要隆重登场的是我自己改写的一个根据LIST生成JSON的类。其实这类简单的要死。所以他只能胜任把LIST转成JSON的工作。而且还有一个局限,至于是什么局限,我们慢慢说。
?
先看代码:
?
//yueue修改的轻量级JSON类
?
package Extest;import java.util.ArrayList;
?
?
public class Json {
?
?
public static void main(String[] args) {
?
?
}public String singleInfo=;public Integer total=0;protected boolean _success=true;protected String _error=;protected ArrayList arrData=new ArrayList();protected ArrayList dataItem=new ArrayList();public String getError() {return _error;}public void setError(String error) {if(!error.equals())this._success=false;this._error = error;}public boolean getSuccess() {return _success;}public void setSuccess(boolean success) {if(success) this._error=;this._success = success;}public Json(){}public void reSet(){arrData.clear();dataItem.clear();}public void addItem(String name,String _value){dat
您可能关注的文档
- 1、3G与数字图书馆-曾剑秋.ppt
- 1.4 CDMA2000主要关键技术(一).ppt
- 1南京理工2012培训_无线.ppt
- 2、3G互操作优化专题.doc
- 3G百问资料库.doc
- 13-RG000000 CDMA 1X寻呼信道容量与位置区划分-20040225-A-1.0.ppt
- cdma2000标准(摘要).doc
- CDMA海域优化解决方案1.ppt
- CDMA数字飞地压扩系统_090312.ppt
- CDMA通用知识培训.ppt
- CNAS-CL63-2017 司法鉴定-法庭科学机构能力认可准则在声像资料鉴定领域的应用说明.docx
- 12J7-3 河北《内装修-吊顶》.docx
- 12N2 河北省12系列建筑标准设计图集 燃气(油)供热锅炉房工程.docx
- 内蒙古 12S8 排水工程 DBJ03-22-2014.docx
- 山西省 12S10 12系列建筑标准设计 管道支架、吊架.docx
- 16J601-木门窗标准图集.docx
- 12J8 河北省12系列《 楼梯》.docx
- CNAS-GL37 2015 校准和测量能力(CMC)表示指南.docx
- CNAS-RL02-2016 能力验证规则.docx
- 津02SJ601 PVC塑料门窗标准.docx
最近下载
- 钻井工程培训.ppt
- 2023河南三门峡市公安局招聘留置看护队员197人考试备考题库及答案解析.docx VIP
- 超星尔雅学习通《形势与政策(2025春)》章节测试题库及答案一套.docx VIP
- 葡萄酒工艺学完整版.ppt VIP
- 高中语文课件:《红楼梦》选讲16.pptx
- 超星尔雅学习通《形势与政策(2025春)》章节测试题库【有一套】.docx VIP
- 社会调查研究方法:社会现象的测量PPT教学课件.pptx
- BS EN 13749-2011铁路应用 — 轮对和转向架 — 转向架结构要求的规定方法(中文版).doc
- 某村供水工程初步设计报告.docx VIP
- 2025中国低空经济行业研究报告.pdf
文档评论(0)