struts与json

 

 

JSON插件执行的流程如下:


struts与json

struts中配置如下:

<package name="json" extends="json-default" namespace="/test">
        <action name="testByAction"  class=" UserAction" method="testByAction">           
                 <result name="success" type="json">
		         <param name="root">dataMap</param>
                 </result>   
         </action>  
</package>

 

1.需要继承 json-default

 

2. result 类型需为 json

 

3 param   的名字有下面几

 

a.   root: 可以称为“根对象”, 默认将会序列所有有返回值的 getter 方法的值,而无论该方法是否有对应属性。可以指定为某一个对象。如上面的配置,如不配置root则表示返回所有该类的 getter 方法的值。如配置为dataMap,则表示只返回getDataMap对象的值,后面的包含不包含等配置,也只能根据 dataMap来配置。

 

b.  ignoreHierarchy:默认为true,表示不返回父类中的getter 方法的值 ;设为false后,会返回包含父类的getter 方法的值

 

c.  excludeNullProperties 指定是否序列化空的属性。

 

d.  includeProperties 这里指定 root返回的结果中 需要输出的 属性。支 持正则表达式匹配属性名,可以用 “,” 分割填充多个正则表达式。

 

e.  excludeProperties: 这里指定root返回的结果中需要 排除的属性,这些排除的属性将不被序列化,一般不与上边的 includeProperties 参数配置同时出现   。支 持正则表达式匹配属性名,可以用 “,” 分割填充多个正则表达式。比如在返回用户信息时,指定不返回密码属性。

 

当需要处理以JSON文本提交的请求时,需要配置拦截器<interceptor-ref name="json" />