Fastjson快速入门
在使用Ajax方式构建的web2.0应用中,通常需要使用JSON作为数据交换的格式,JSON和XML相比较,更加便于解析,易于学习和使用。
最原始的Ajax方式是创建XmlHttpRequest对象,来进行发送请求和接收响应的。但是,创建方式过于复杂,需要考虑到浏览器的兼容性、字符编码等诸多因素。 JQuery是一种基于Javascript的前端框架,提供了对Ajax的轻量级封转,以一种更加友好的方式使用Ajax技术,通常为$.ajax或者$.get/$.post方式。 EasyUI和Extjs则是Javascript的重量级封装库。这两者都提供了非常优秀的前端UI组件,例如日历组件calendar,表格组件datagrid,树状空间tree等;这些重量级的UI框架,提供了对Ajax更加良好的支持,很多情况下只需要提供ajax请求的url以及用于响应的data即可,开发者不再需要因为处理Ajax请求与响应的技术细节而抓耳挠腮了! 在传统的Java web开发中,我们通常使用out对象将生成的JSON文本写出到客户端,在前端使用Javascript对服务器端返回的JSON文本进行解析即可。 使用过Spring MVC的童鞋,一定会被它的强大并且简单所深深折服。Spring MVC框架会自动地将实体对象、或者实体对象List集合,转换为客户端所需要的JSON文本,而仅仅需要添加对Jackson.jar的依赖即可|伦理电影 www.akdy.cn 如果使用其他的框架技术如struts,或者使用servlet作为控制器的话,需要开发者手动的实现实体、实体集合到JSON文本的转换功能。幸运的是,我们可以使用开源的JSON处理包来帮助我们完成此项功能。如果使用json-lib-2.2.2-jdk15.jar的话,需要添加很多依赖包: ezmorph.jar 比较繁琐,当然如果使用Maven作为项目构建工具,这自然不是问题。 我们还有更多选择的余地,Alibaba的温少实现了一个JSON处理jar,并且已经作为开源项目:fastjson-1.1.33.jar [可下载附件]。fastjson的优点是:开放源码、没有多余的依赖jar、强大并且性能显著。 [1]. 转为Java类型为JSON文本: @ 大多数情况下,只需要一行代码即可,提供的参数可以是Java对象、对象的List集合,或者Map类型、Map的List集合等:String jsonStr = JSON.toJSONString(arg) @ 如果存在Date类型的字段:如下代码是一种更加简单的处理方式: ---------------------OUTPUT------------------------ [ [2]. JSON文本转为Java对象: Userinfo user = JSON.parSEObject(jsonStr,Userinfo.class); 我们可以将客户端传入的JSON文本,反序列化为Java实体。 [3]. 使用JSONObject对象: @ 在进行某项操作,比如删除时,我们需要反馈给客户端一个包含多个字段的对象: JSONObject result = new JSONObject(); result.put("success",true); @ 输出时,转换为JSON文本: 调用result.toString()的转换结果等同于传统的result.toJSONString()方法。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |