Struts2.2 JSON配置详解与Java实现
5星 · 超过95%的资源 需积分: 10 166 浏览量
更新于2024-09-15
收藏 112KB DOCX 举报
本文档主要介绍了如何在Struts2.2.3版本中配置并使用Struts2 JSON插件。Struts2 JSON插件允许开发者通过Ajax技术实现前后端的异步交互,简化了基于JSON的数据传输和处理。
首先,确保已安装必要的依赖库,因为这些jar包通常包含在Struts2.2.0及更高版本中。Web应用的部署配置中,要在`web.xml`文件中添加Struts2的初始化信息:
```xml
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
```
接下来,`struts.xml`配置文件中,需要扩展`json-default`包,并定义Action的行为和结果处理方式:
```xml
<package name="default" extends="json-default">
<action name="person" class="com.person.PersonAction" method="view">
<result type="json">
<!-- 配置哪些属性应被序列化到JSON -->
<param name="includeProperties">person.name, person.age, person.gender</param>
</result>
</action>
</package>
```
在这里,`PersonAction`是一个Java类,负责处理请求并可能有多个属性。`view`方法是这个Action的入口点。通过`resulttype="json"`,Struts2会将Action的方法执行结果转换为JSON格式,并传递给客户端。`includeProperties`参数用于指定要包含在JSON对象中的Action属性。
当用户通过URL `http://localhost:8080/extjs05/test.action` 调用这个Action时,Struts2会根据配置自动将Action实例中的`name`、`age`和`gender`属性序列化成JSON格式,如`{ "person": { "name": "Jim", "age": 18, "gender": "man" } }`,然后返回给前端的JavaScript代码。
为了更好地控制数据的序列化,可以使用`json-default`包内的`includeProperties`或`excludeProperties`拦截器,前者仅包含指定的属性,后者则排除某些属性。这些拦截器的配置应在相应的`<interceptors>`元素中添加。
Struts2.2.2 JSON配置的关键在于定义Action、指定`resulttype="json"`以及配置哪些属性需要被序列化到JSON格式。通过这种方式,开发者能够轻松地实现基于JSON的异步交互,提高用户体验和Web应用的灵活性。
2011-10-31 上传
2019-08-03 上传
2011-11-25 上传
481 浏览量
2011-12-29 上传
2020-11-26 上传
雨泽
- 粉丝: 252
- 资源: 50
最新资源
- (FZY191)仿NearMe软件商店移动版手机wap软件网站模板.zip
- Mock4JS-开源
- shortcircuit_短路电流计算_一个5节点电力系统的故障计算_lessonj8a_短路故障_电力故障_源码
- SvarkaOddsCalculator:Svarka赔率计算器用于保加利亚非常流行的称为Svarka的游戏
- js可拖拽最大最小化弹出层窗口.zip
- shebang:POC 聊天量表
- 行业分类-设备装置-一种节能型油冷机.zip
- calculator:使用javascript制作的计算器
- 手势数据的识别.zip
- MXUnit-开源
- driversMasterProg_Driver_源码
- xwiki-platform-realtime:实时协作扩展
- 行业文档-设计装置-不伤手的粉笔.zip
- 基于python与YaleB数据集使用OMP + K-SVD算法实现图像去噪
- 自制数据集进行实时手势识别.zip
- Orbada - Database manager:数据库SQL,查询工具,使用JDBC for Oracle,SQLite,PostgreSQL等-开源