`

struts2 json插件

阅读更多

1struts2 json插件 - 冬 - ysd-spring 的博客<package name="default" extends="struts-default"> 

 

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

  改为

1struts2 json插件 - 冬 - ysd-spring 的博客<package name="default" extends="json-default">  

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

 

4.Action中的配置

1struts2 json插件 - 冬 - ysd-spring 的博客<action name="testAction" class="com.json.action.TestAction" method="testMethod">   

2struts2 json插件 - 冬 - ysd-spring 的博客    <interceptor-ref name="json" /><!--处理以JSON文本提交的请求-->   

3struts2 json插件 - 冬 - ysd-spring 的博客    <result type="json" /> <!--将action的bean属性以json字符串返回浏览器-->   

4struts2 json插件 - 冬 - ysd-spring 的博客</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类

struts2 json插件 - 冬 - ysd-spring 的博客struts2 json插件 - 冬 - ysd-spring 的博客public class BaseAction extends ActionSupport implements  struts2 json插件 - 冬 - ysd-spring 的博客{    

struts2 json插件 - 冬 - ysd-spring 的博客    private Person person = null;    

struts2 json插件 - 冬 - ysd-spring 的博客                struts2 json插件 - 冬 - ysd-spring 的博客    

struts2 json插件 - 冬 - ysd-spring 的博客}   

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

    bean类  

1struts2 json插件 - 冬 - ysd-spring 的博客struts2 json插件 - 冬 - ysd-spring 的博客public class Person struts2 json插件 - 冬 - ysd-spring 的博客{    

2struts2 json插件 - 冬 - ysd-spring 的博客    private String name;    

3struts2 json插件 - 冬 - ysd-spring 的博客    private int age;    

4struts2 json插件 - 冬 - ysd-spring 的博客    struts2 json插件 - 冬 - ysd-spring 的博客    

5struts2 json插件 - 冬 - ysd-spring 的博客}  

public class Person {private String name;private int age;...}

    我们只要输出person对象的name属性值,配置如下

1struts2 json插件 - 冬 - ysd-spring 的博客<result type="json">

2struts2 json插件 - 冬 - ysd-spring 的博客<param name="root">person.name</param>

3struts2 json插件 - 冬 - ysd-spring 的博客</result>

 

  5.2. excludeNullProperties 参数:表示是否去掉空值, 默认值是false,如果设置为true会自动将为空的值过滤,只输出不为空的值。

1struts2 json插件 - 冬 - ysd-spring 的博客<result type="json">   

2struts2 json插件 - 冬 - ysd-spring 的博客    <param name="excludeNullProperties">true</param>   

3struts2 json插件 - 冬 - ysd-spring 的博客</result>   

 

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

1struts2 json插件 - 冬 - ysd-spring 的博客<result type="json">   

2struts2 json插件 - 冬 - ysd-spring 的博客    <param name="ignoreHierarchy">false</param>   

3struts2 json插件 - 冬 - ysd-spring 的博客</result>   

 

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

   如:输出person的所有属性 

1struts2 json插件 - 冬 - ysd-spring 的博客<result type="json">   

2struts2 json插件 - 冬 - ysd-spring 的博客    <param name="includeProperties">person.*, person\.name</param>   

3struts2 json插件 - 冬 - ysd-spring 的博客</result>   

 

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

http://blog.163.com/ysd-spring/blog/static/13430106720102191161972/

分享到:
评论

相关推荐

    Struts2 json插件入门指南.pdf

    ### Struts2 JSON插件入门知识点详解 #### 1. 依赖包 - **Struts2 必需的 6 个 jar 包** - `commons-fileupload-1.2.2.jar`: 提供了文件上传功能的支持。 - `commons-io-2.0.1.jar`: 用于处理I/O操作,简化输入...

    使用Struts2的JSON插件来实现JSON数据传递

    Struts2的JSON插件正是为了方便开发者在Struts2框架中处理JSON数据而设计的。 首先,让我们深入了解JSON。JSON是一种独立于语言的数据交换格式,具有易于人阅读和编写,同时也易于机器解析和生成的特点。它的数据...

    struts2的json插件

    1. **自动转换Action结果到JSON**:当你配置了JSON插件后,Struts2可以将Action的结果对象自动转换为JSON格式,然后返回给客户端,无需额外的代码处理。 2. **支持数据过滤**:你可以指定哪些字段应该被包含在JSON...

    struts2 json

    1. **Struts2 JSON插件**:为了支持JSON,你需要在Struts2项目中添加JSON插件。这个插件提供了一组拦截器和结果类型,使得Action可以直接返回JSON响应。 2. **xwork-core-2.1.6.jar**:这是Struts2的核心库,包含了...

    struts2与json整合

    要实现Struts2与JSON的整合,首先需要在项目中引入Struts2 JSON插件。根据给定的部分内容,可以看到使用的是`struts2-json-plugin-2.1.8.1.jar`这个JAR包。该插件包含处理JSON相关的类库,使得Struts2能够识别并处理...

    struts 2.0 与 2.1 需要的json插件

    在Struts 2的早期版本中,如2.0和2.1,为了支持JSON(JavaScript Object Notation)数据交换格式,开发者需要额外安装和配置JSON插件。JSON在Web应用中广泛用于前后端的数据传输,因为它轻量级、易于阅读和编写,...

    struts2所需的包和Struts2_json所需包

    2. **Struts2 JSON插件**:Struts2提供了一个JSON插件(`struts2-json-plugin.jar`),它允许我们将Action的返回值直接转换为JSON格式,便于前后端数据交换。这个插件简化了原本需要手动序列化对象到JSON字符串的...

    struts2的json插件配置详解(附示例strutsJson)

    这篇博客将深入讲解Struts2的JSON插件配置,并通过实例“strutsJson”来演示具体用法。 首先,让我们了解JSON插件的基本配置。在Struts2框架中,我们需要在`struts.xml`配置文件中引入JSON插件的相关配置。这通常...

    TestStruts2JSON程序源码

    1. **Struts2 JSON插件**:Struts2提供了JSON插件,该插件使得Action可以直接返回JSON格式的结果,无需额外的转换步骤。在配置struts.xml文件时,需要引入这个插件,并为Action定义一个返回JSON结果的类型。 2. **...

    struts2-json

    Struts2提供了JSON插件,允许开发者在Action类中返回JSON响应。安装插件后,只需在Action配置中启用JSON支持,就能自动处理JSON输出。 2. **Action配置**: 在Struts2的配置文件(struts.xml或struts.properties)...

    struts2的json插件实例

    在Struts2中,可以通过JSON插件来实现JSON数据的处理,使得Web应用能够更方便地与AJAX或JavaScript进行交互。 本实例将详细介绍如何在Struts2项目中配置并使用JSON插件,以及如何创建一个简单的JSON响应。 首先,...

    json+struts2插件

    这可以实现struts和json的整合 &lt;struts&gt; &lt;package name="demo" extends="json-default"&gt; &lt;result type="json"/&gt; &lt;/action&gt; &lt;/struts&gt;

    struts2+json

    在Struts2中集成JSON支持,首先需要添加相应的依赖,比如struts2-json-plugin,这个插件提供了JSON结果类型。当Action执行完毕后,可以返回一个JSON结果类型,Struts2会自动将Action的属性转换为JSON格式并返回给...

    struts2与json插件(2)

    在Struts2中,通过集成JSON插件,可以方便地将Action的返回结果转换为JSON格式,便于前端JavaScript处理。本篇将深入探讨`JsonUtils.java`源代码,以及Struts2与JSON插件的结合使用。 首先,`JsonUtils`是Struts2 ...

    struts2json.rar_DEMO

    1. **自动序列化**: Struts2JSON插件可以自动将Java对象序列化为JSON格式,无需手动转换。 2. **配置简单**: 通过简单的配置,可以指定哪些Action方法返回JSON响应。 3. **性能优化**: 插件内置了缓存机制,对于相同...

    json示例下载 +struts2

    2. **配置Struts2 JSON插件**:在struts.xml配置文件中,你需要启用JSON插件,并配置默认的JSON结果类型。例如: ```xml &lt;constant name="struts.enable.SMD" value="true"/&gt; &lt;constant name="struts.action....

    Struts2Json example

    "Struts2Json example" 是一个具体的示例项目,展示了如何在Struts2框架中集成和使用JSON插件。这个项目可能包含了一系列的Action类,这些类能够处理HTTP请求并返回JSON响应。下面我们将深入探讨Struts2 JSON插件的...

    struts2-json-plugin-2.1.8.1.jar

    标题"struts2-json-plugin-2.1.8.1.jar"表明这是Struts2 JSON插件的一个特定版本,2.1.8.1。在软件开发中,版本号的更新通常意味着修复了已知的错误,增加了新的特性,或者提高了性能。 "JsonPlugin.tld"是Tag ...

    java相关的Struts2-Json插件的使用例子.pdf

    Struts2 JSON插件是Java开发中用于处理JSON数据的一个工具,主要目的是为了方便Web应用在前后端交互时,能够快速地将Action对象转换为JSON格式的字符串,从而实现Ajax或者JSONP请求的响应。JSON(JavaScript Object ...

    Struts2_JSON_Demo

    1. **Struts2 JSON插件**:Struts2提供了内置的JSON插件,允许我们直接将Action的返回值转换为JSON格式。安装并配置该插件后,只需在Action类的方法上添加`@Result(type="json")`注解,即可启用JSON响应。 2. **...

Global site tag (gtag.js) - Google Analytics