struts2和json的集成,是为了适应在action 处理完后需要向对端输出相应对象的多个属性,简单的例子是:多级select标签的联动,这个时候从action返回的值不仅仅是SUCCESS or ERROR这么简单,而是在后端拼接好的<option>xxx</option>,这个时候JSON排上了用场
附加一句,如果不是在Struts2中使用json,例如在servlet中,这个时候是通过拼接json格式的字符串返回到前端(注:这只是我看到有类似的例子,稍后自己会亲手测试下..这或许我印证了: struts2h会把返回的对象自动封装成相应的json格式. 这句话,只不过在servlet里我们是自己来动手封装了)
原理:通过配置,struts2会调用action里面相应属性的getter方法拿到对象,在封装成jsong格式后序列化传送到前端
配置方式:
1>加入json-lib-2.4-jdk15.jar
2>在struts.xml的配置里面加上:
<package name="strtus2" extends="json-default"></package>
注:以后要用到json的action extends这个包就可以了
3>action的配置 例子:
<action name="registerUtilAction" class="springRegisterUtilAction" >
<result name="areaListDO" type="json"> <!-- type=json 切记 result的name属性要和返回的属性名一样-->
<param name="excludeNullProperties">true</param> <!-- 是否去掉返回值为NULL的properties -->
<param name="includeProperties"><!-- 包括哪些properties -->
areaListDO
</param>
</result>
</action>
4> 编写action,记住返回的属性一定要有getter方法,不需要返回的属性可用:
@JSON(serialize = false)
这个json注解标示,即不序列化这个属性,最好不需要返回的都这么注解,否则可能会出现不能序列化的异常等
5>前端提取json对象,这里推荐用firebug等工具查看下:
可以清晰的看到json的内容,甚至json的格式:对与这截图 我的areaListDO 只有两个属性 areaList(又包括areaId,areaInfoPK和areaName三个属性) 和results两个属性,还是比较方便的, 在前端提取json格式可以这样:
json.areaListDO.results 即json对象的areaListDO(这个是我返回的属性名)的results这个属性
也可以 json["areaListDO"].results 之所以这么取 是看到网上有人说用中括号[] 取是避免属性中有中文,不过我亲自测试过,用"." 取含有中文的属性也是没有乱码的...
大功告成 ..
分享到:
相关推荐
1,需要把jsonplugin-0.33.jar拷贝到Web-INF/lib目录下....2,在struts2.1.6的配置文件中进行配置,就是返回的类型是json,并且要为JSON数据单独创建一个Package,继承的包不再是struts-default,而是json-default
当自己做出来时,感觉挺简单的,但想起自己刚开始做不会那会儿,真的挺悲哀的啊,在网上也搜了半天也没搜出个123,最终经过苦战终于做出来的,文档中重要部分都标红提示了,在此分享给童鞋们
介绍struts、ajax如何返回json数据 一首先引入Struts和json所需的jar包。 二编写页面 三编写action类 四Struts配置
struts2 2.3.16.3 版本配置json所需要的jar文件。有时候版本不一致也会配置失败。
使用Struts2和jQuery EasyUI实现简单CRUD系统,从零开始,从基础的EasyUI与Struts2的使用json格式进行交互开始。
一个很简单的示例,struts2.2.3配置struts-json的例子和解释.
使用struts2框架开发时,如要使用json技术,需导入的jar包
struts2 spring4 hibernate4 Struts2零配置基本架包 struts2-json-plugin-2.5.5.jar struts2-convention-plugin-2.5.5.jar
为了方便ajax调用传输数据,在struts2中加入的json插件用来做对象的序列化和反序列化,json插件的下载地址 http://code.google.com/p/jsonplugin/ 1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录 注:struts2...
Textfilter源和struts.xml配置文件. 博文链接:https://flym.iteye.com/blog/183534
extjs+struts2+hibernate+json登录程序,主要讲解struts2配置JSON与前台extjs通信,异步数据交换,很强大
Struts2+Spring2.5+jdbc+Ext+json实例用到的lib包。
struts2中框架配置文件xml中需要json-default 前面我网上找,发现都是要积分的 还是好几个积分 我有点气了 免费提供一个。
struts2整合json,示例说明文档
NULL 博文链接:https://deony2jacob1314.iteye.com/blog/1826725
Struts2+ajax+json返回list,并处理json返回为[object,object]的方法,Struts2配置
struts2,json-plugin, 并全注解零配置
将jsonplugin-0.30.jar放到工程的lib下面,然后struts2在struts.xml的配置文件中可以指定返回的结果集的类型为:json,把返回的结果封装为json字符串JSON插件是Struts2的Ajax插件,通过利用JSON插件,允许开发者以...