Structs2中Json插件的Action配置
来源:互联网 发布:淘宝vip会员设置 编辑:程序博客网 时间:2024/05/17 06:16
转自:http://hi.baidu.com/shenlvjing/blog/item/80b5d04f720d0f31aec3abb3.html
那该如何构建一个Rich Client的框架呢。我觉得JSON数据就有了用武之地了。JSON(Java Script Object Notation),是一种语言无关的数据交换格式。 JSON插件是Structs 2 的Ajax插件,通过利用JSON插件,开发者可以很方便,灵活的利用Ajax进行开发。Json是一种轻量级的数据交换格式,JSon插件提供了一种名为json的Action ResultType 。一旦为Action指定了该结果处理类型,JSON插件就会自动将Action里的数据序列化成JSON格式的数据,并返回给客户端物理视图的JavaScript。简单的说,JSON插件允许我们在JavaScript中异步的调用Action,而且Action不需要指定视图来显示Action的信息显示。而是由JSON插件来负责具体将Action里面具体的信息返回给调用页面。Json的数据格式可简单如下形式: person = { name: 'Jim',age: 18,gender: 'man'}。
但是在structs2的模型驱动下,从Action返回的数据往往很大,因为里面封装了JavaBean的整个实例。比如person Bean里面除了姓名、性别、年龄还有其他的什么表哥、表妹、大姨妈。二姨妈的成员在。而我们想要从Action返回到调用页面的却只有姓名、年龄和性别的数据。这个时候配置includeProperties或者excludeProperties拦截器即可。而这2个拦截器的定义都在struts2的json-default包内,所以要使用该拦截器的包都要继承自json-default。
<struts>
<constant name="struts.objectFactory" value="spring"/>
<include file="struts-admin.xml"></include>
<package name="default" extends="json-default">
<action name="person" class="com.person.PersonAction" method="view">
<result type="json">
<param name="includeProperties">
person/.name,persoon/.age,person/.gender
</param>>
</result>
</action>
</package>
</struts>
利用Struts 2的支持的可配置结果,可以达到过滤器的效果。Action的处理结果配置支持正则表达式。
但是如果返回的对象是一个数组格式的Json数据。比如peson Bean中有对象persion1...person9,而我只要person1的json数据,则
可以用如下的正则表达式。
<struts>
<constant name="struts.objectFactory" value="spring"/>
<include file="struts-admin.xml"></include>
<package name="default" extends="json-default">
<action name="person" class="com.person.PersonAction" method="view">
<result type="json">
<param name="includeProperties">
person/[/d+/]/.person1
</param>>
</result>
</action>
</package>
</struts>
excludeProperties拦截器的用法与此类同,如果拦截的仅仅是一个对象,如果拦截掉person Bean的整个对象。
<struts>
<constant name="struts.objectFactory" value="spring"/>
<include file="struts-admin.xml"></include>
<package name="default" extends="json-default">
<action name="person" class="com.person.PersonAction" method="view">
<result type="json">
<param name="excludeProperties">
person
</param>>
</result>
</action>
</package>
</struts>
- Structs2中Json插件的Action配置
- Struts2中Json插件的Action配置
- Structs2 或SSH项目action中获取post方法发送的JSON数据
- structs2 中action 获取request session response
- action中json的应用
- Structs2开发环境 的配置
- Structs2 输入校验,Action中校验,在xml中校验
- struts2中action返回json时的配置(后面包含跨域时配置)
- Structs2或者SSH项目中jsp向action传参
- Structs2或SSH项目在Action中获取session对象
- Structs2 action 通配符
- structs2-运用Action
- Java Structs2 动态Action
- Json Struts-Action 配置
- 使用structs2的时候进入action 不能赋值的错误
- action中json数据的运用举例
- 怎么在structs2 取得action里面的内置对象
- Structs2 Action访问Servlet API的三种方式
- 学习VirTools
- 将一串数字转化为中文字符串,使用 C# 将数字转换成大写人民币 (例如:用户输入2300,系统就会显示两千三百元 )
- MBR分区与GPT分区
- Perl 里的模式识别所有的 12 个传统的元字符(所谓十二烂人),
- Daemon tools软件的使用(虚拟光驱软件)
- Structs2中Json插件的Action配置
- PHP与WAP技术
- p2psim 主页
- Perl标量的特有用的函数
- 数据库取表名、列名操作
- 菁搜FTP搜索引擎
- js 子窗口传值给父窗口
- Java语言规范第三章-词法
- [perl]defined的用法