`

struts2中jsonplugin插件的使用

 
阅读更多

为了方便ajax调用传输数据,在struts2中加入的json插件用来做对象的序列化和反序列化,json插件的下载地址

http://code.google.com/p/jsonplugin/

1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录

注:struts2的json插件有两个版本0.32和0.34,我用的struts2的版本是2.0.11,在加入0.34版本json插件时启 动发生异常,提示找不到相关方法,后来就换成了低版本的0.32一切OK,仔细查看文档后发现struts2的2.0.*版本的对应插件的0.32版 本,struts2.1.*版本对应0.34版本

2.json插件执行原理时序图

3.将struts.xml里面的配置修改

 

<package name="default" extends="struts-default"> 

 改成:

 

<package name="default" extends="json-default">

 4.Action中的配置

<action name="testAction" class="com.json.action.TestAction" method="testMethod">    
    <interceptor-ref name="json" /><!--处理以JSON文本提交的请求-->    
    <result type="json" /> <!--将action的bean属性以json字符串返回浏览器-->    
</action> 

 注:根据需要选择interceptor和result配置
5. 你会发现前台返回的json字符串,是把action中的所有属性全部转化为json字符串返回给浏览器了,但是我有时候需要根据实际情况返回部分结果,如何对json的结果进行定制输出呢?result提供了一些参数替你解决这个问题

5.1. root参数:从返回结果中根据ognl表达式取出你需要输出的结果

如:action类

public class BaseAction extends ActionSupport implements  {     
    private Person person = null;     
                ...     
} 

 bean类
public class Person {  
     private String name;  
     private int age;  
     ...  
}
我们只要输出person对象的name属性值,配置如下
<result type="json"> 
     <param name="root">person.name</param> 
</result>
5.2. excludeNullProperties 参数:表示是否去掉空值, 默认值是false,如果设置为true会自动将为空的值过滤,只输出不为空的值

<result type="json">    
    <param name="excludeNullProperties">true</param>    
</result>

 5.3. ignoreHierarchy 参数:表示是否忽略等级,也就是继承关系,比如:TestAction继承于BaseAction,那么TestAction中返回的json字符串默认 是不会包含父类BaseAction的属性值,ignoreHierarchy值默认为true,设置为false后会将父类和子类的属性一起返回。

    <result type="json">    
        <param name="ignoreHierarchy">false</param>    
    </result>   

 5.4. includeProperties 参数:输出结果中需要包含的属性值,这里正则表达式和属性名匹配,可以用“,”分割填充多个正则表达式。
   如:输出person的所有属性

    <result type="json">    
        <param name="includeProperties">person.*, person\.name</param>    
    </result>  

 5.5. excludeProperties 参数:输出结果需要剔除的属性值,也支持正则表达式匹配属性名,可以用“,”分割填充多个正则表达式,类同

转自
http://cqjava.iteye.com/blog/465495
http://yxgyh.iteye.com/blog/686317

分享到:
评论

相关推荐

    Struts2_Jsonplugin_详解.doc

    在Struts2中,JSON插件提供了一个名为`json`的ResultType,这个ResultType可以将Action中的状态信息转换成JSON格式的数据并直接返回给客户端,而无需通过传统的视图资源(如JSP、Freemarker等)进行渲染。...

    struts2的json插件配置详解(附demo)

    为了方便ajax调用传输数据,在struts2中加入的json插件用来做对象的序列化和反序列化,json插件的下载地址 http://code.google.com/p/jsonplugin/ 1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录 注:struts2...

    Jsonplugin结合struts2使用说明

    在Struts2中,JSON(JavaScript Object Notation)插件是用于处理JSON数据传输的重要组件,使得服务器与客户端之间能进行高效的数据交换。JSON格式因其简洁和易于解析的特性,在Web开发中广泛被用作API接口的数据...

    jsonplugin插件

    通过以上介绍,我们可以看出JSONPlugin插件在Struts2中扮演着重要角色,简化了JSON数据的处理,使得Java后端与前端ExtJS的通信更加顺畅。理解并熟练使用这个插件,对于提升Web应用的用户体验和开发效率有着显著的...

    struts2的json插件

    总的来说,Struts2的JSON插件极大地简化了Java Web应用中的JSON数据处理,提高了开发效率。了解并熟练使用这个插件,对于提升Web应用的用户体验和响应速度具有重要意义。无论是进行简单的数据交换还是构建复杂的前后...

    json2+jsonplugin struts2整合ajax时,使用json时需要的jar包

    在这个过程中,我们通常会用到`json2.js`库来处理JSON数据在JavaScript端的解析和序列化,以及Struts2的`jsonplugin`来支持JSON响应。 首先,让我们详细了解一下`json2.js`。这个JavaScript库是由Douglas Crockford...

    struts2 的jar包jsonplugin-0.33.jar包

    在Struts2中,JSON插件允许我们将Action的返回结果转换成JSON格式,从而可以与前端的AJAX请求进行交互。`jsonplugin-0.33.jar`包含了一组类和配置,使得Struts2能够轻松地支持JSON序列化和反序列化,这对于创建...

    struts的jsonplugin-0.13插件包

    是struts的一个插件包

    jsonplugin(struts2.0)

    在Struts2中,JSONPlugin的引入极大地简化了服务器端与客户端之间的数据传输。通过这个插件,开发者可以将Action的结果直接转换为JSON格式,然后发送到客户端,由JavaScript进行处理。这种方式避免了传统方式中需要...

    jsonplugin,struts2-json-plugin,js

    不同版本的插件可能适用于不同的Struts2框架版本,开发者应根据其项目所使用的Struts2版本选择合适的插件。 使用这些组件,开发者可以创建一个能够与前端通过JSON交互的Struts2应用。例如,前端使用Ajax发起请求,...

    jsonplugin-0.33.jar

    JSONPlugin-0.33.jar 是一个专门为Struts2框架设计的插件,主要用于扩展Struts2的功能,使其能够更好地支持JSON(JavaScript Object Notation)数据格式的处理。JSON是一种轻量级的数据交换格式,广泛应用于Web服务...

    struts2中文教程

    在文件列表中,`jsonplugin-0.33.jar`是Struts2 JSON插件的库文件,它包含了处理JSON相关功能的类和方法。要使用这个插件,我们需要将其添加到项目的类路径中,并在Struts2的配置文件(通常为struts.xml)中进行相应...

    Struts2中使用JSON

    在Struts2中使用JSON(JavaScript Object Notation)可以方便地将服务器端的数据传输到客户端,通常用于AJAX请求或者创建RESTful API。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成...

    Struts2与AJAX

    JSON插件允许开发者轻松地将Java对象转换为JSON格式,以便在AJAX请求和响应中使用。在Struts2的showcase应用中,JSON插件通过FreeMarker模板来展示如何输出JSON结果,虽然这种方式有一定的灵活性,但不如直接使用...

    jsonplugin-0.32.jar

    在Struts2中,JSON作为一种轻量级的数据交换格式,常用于AJAX请求的响应,因为它的结构清晰、易于解析,且在网络传输中占用的带宽较小。JSONPlugin的引入,简化了开发者在Struts2应用中处理JSON的过程,无需手动编写...

    struts2-json-plugin-2.1.8.1.jar

    "JsonPlugin.tld"是Tag Library Descriptor文件,用于定义Struts2插件中的自定义标签。在这个文件中,你可以找到与JSON相关的标签定义,如`json:json`或`json:object`等,这些标签可以方便地在JSP页面上使用,以生成...

    json+struts2插件

    这可以实现struts和json的整合 &lt;struts&gt; &lt;action name="JsonPlugin" class="testJson.JsonPluginAction"&gt; &lt;/action&gt; &lt;/struts&gt;

    JSONPLUGIN源码

    在Struts2中,JSONPLUGIN扮演着关键角色,允许Action(控制器)返回JSON响应,供前端JavaScript进行处理。这个插件使得开发者可以轻松地将Java对象转换为JSON字符串,或者将JSON字符串反序列化为Java对象,极大地...

    Struts2 + jQuery+JSON 实现ajax

    3. **配置问题**:检查Struts2的配置文件(如struts.xml)中的配置是否正确,特别是关于JSON插件的部分。 #### 三、总结 通过以上步骤,我们可以利用Struts2框架结合jQuery与JSON轻松地实现Ajax功能。需要注意的是...

Global site tag (gtag.js) - Google Analytics