当利用ajax调用action返回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 参数:输出结果需要剔除的属性值,也支持正则表达式匹配属性名,可以用“,”分割填充多个正则表达式,类同5.4.
分享到:
相关推荐
在Struts2中,Action类中的方法负责处理来自客户端的请求。为了返回JSON数据,可以定义一个如下的Action方法: ```java public String getXxx() { return "aaa"; } ``` 当客户端调用此方法时,Struts2会自动将...
1. **Action结果类型**:在Struts2中,Action的结果类型决定了如何处理Action的返回值。`struts2-json-plugin`添加了JSON结果类型,当Action返回此类型时,会将结果转换为JSON格式。 2. **JSONResult类**:这是实现...
使用Struts2的JSON功能时,需要注意安全问题。由于JSON可以暴露敏感信息,应避免在JSON响应中包含敏感数据。此外,Struts2的JSON漏洞曾引起广泛关注,因此保持框架版本的更新至关重要,以修复可能的安全漏洞。 8. ...
导入这些包后,开发者可以按照Struts2的配置方式设置Action,通过`@ResultType("json")`注解或在配置文件中指定`result`类型为`json`,Struts2就会自动将Action的返回值转化为JSON格式并发送到客户端。 在实际开发...
1. **Struts2 JSON插件**:Struts2提供了内置的JSON插件,允许我们直接将Action的返回值转换为JSON格式。安装并配置该插件后,只需在Action类的方法上添加`@Result(type="json")`注解,即可启用JSON响应。 2. **...
在Struts2中,我们可以使用Struts2的JSON插件将Action的返回值转换为JSON格式,方便前端JavaScript进行处理。 最后,JQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画制作以及Ajax交互。在本例中...
在Struts2中集成JSON(JavaScript Object Notation)技术可以使得后端数据与前端交互更加高效,特别是对于AJAX请求。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Struts2中使用...
4. 将JSON数组设置为Action的返回值,Struts2的JSON插件会自动处理这个返回值,将其包装成JSON响应并发送到前端。 在前端,EXTJS使用Ajax请求调用Struts2 Action,接收返回的JSON数据,然后动态渲染UI,展示所有...
1. **配置Struts2**:首先,需要在Struts2的配置文件`struts.xml`中定义Action,设置返回类型为"json",这样Struts2就会自动将Action的返回值转化为JSON格式。 ```xml <result type="json"> <param name="root">...
1. **配置JSON支持**:要在Struts2中启用JSON响应,首先需要在`struts.xml`配置文件中添加JSON插件的相关配置。这通常涉及到注册一个全局结果类型`json`,例如: ```xml <constant name="struts.action.extension" ...
- **Action配置**:在Struts2中,你可以为每个Action配置一个结果类型为“json”的结果。这将在Action执行完成后返回JSON数据,而非HTML页面。例如,在struts.xml配置文件中: ```xml <result type="json"> *....
在Struts2中,我们可以使用注解来配置Action类,而不是传统的XML配置文件。例如,`@Action`注解用于标识一个方法作为处理请求的入口,`@Result`注解则定义了处理完请求后返回的视图。 Struts2的注解极大地提高了...
当我们在Struts2框架中整合SSH(Spring、Struts2、Hibernate)时,可能会遇到与JSON相关的数据处理问题。下面我们将深入探讨Struts2整合JSON的相关知识点。 首先,Struts2提供了一种内置的JSON支持,允许我们直接将...
在Struts2中,通过集成Struts2 JSON插件,我们可以方便地将Action的返回结果转换为JSON格式,以供前端JavaScript进行处理。 首先,我们要理解Struts2 JSON插件的工作原理。这个插件主要负责将Action的返回值转化为...
在Struts2中使用JSON,首先需要在配置文件(struts.xml)中启用JSON插件,并指定哪些Action支持JSON输出。然后,在Action类中,你可以创建一个返回类型为`Map, Object>`或自定义对象的方法,这个方法将被转换成JSON...
在Struts2中,我们可以利用插件机制轻松实现JSON数据的处理。Struts2的JSON插件允许我们将Action的结果直接转换为JSON格式,无需额外的编码工作。以下是一些关于Struts2与JSON结合使用的知识点: 1. **安装JSON插件...
2. **Struts2的Result类型**:在Struts2中,Action执行后会返回一个Result,JSON结果类型(`json`)使得Action可以直接返回JSON对象,无需额外处理。只需在struts.xml配置文件中为Action指定`result-type="json"`...
在Struts2中配置JSON是为了让应用程序能够处理和返回JSON格式的数据,这在现代Web应用中非常常见,因为JSON是轻量级且易于解析的数据交换格式。在本文中,我们将深入探讨如何在Struts2中配置JSON支持以及其相关知识...
本篇将详细讲解如何在Struts2中配置Action来返回JSON响应。 首先,我们需要了解Struts2的Result类型。默认情况下,Action会返回一个JSP页面作为结果,但通过配置,我们可以让Action返回JSON数据。这需要使用到一个...