一、编写Action类
/**
* AjaxJsonAction.java
* action
* Function: TODO
*
* version date author
* ──────────────────────────────────
* 1.0 2013-9-21 songjy
*
* Copyright (c) 2013, TNT All Rights Reserved.
*/
package action;
import java.util.HashMap;
import java.util.Map;
import com.opensymphony.xwork2.ActionSupport;
import entity.User;
/**
* ClassName:AjaxJsonAction
*
* @author songjy
* @version 1.0
* @since v1.0
* @Date 2013-9-21 下午5:42:49
*/
public class AjaxJsonAction extends ActionSupport {
private static final long serialVersionUID = -2309225335616212699L;
private static Map<Integer, User> users = new HashMap<Integer, User>();
static {
users.put(1, new User(1, "张三"));
users.put(2, new User(2, "李四"));
}
public String json(){
if(users.containsKey(id))
user = users.get(id);
else
user = new User();
return "json";
}
private int id;
private User user;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
/*user设置了getXXX,json插件将User转为json*/
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
二、在struts.xml中配置Action类
<!-- 必须继承json-default,可参阅struts2-json-plugin.jar包中struts-plugin.xml配置文件 -->
<package name="ajax" extends="json-default">
<action name="*" class="action.AjaxJsonAction" method="{1}">
<result name="{1}" type="json"/><!-- type必须是json -->
</action>
</package>
三、编写jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="js/jquery-1.10.2.js"></script>
<title>struts2-json-plugin示例</title>
<script type="text/javascript">
function load_user() {
var id = encodeURIComponent($("#id").val());
$.post("json.do", {
id : id
}).done(function(data) {
alert(data.user.id + "," + data.user.name +"," +data.id);
});
}
</script>
</head>
<body>
id:
<input name="id" type="text" id="id">
<br />
<input type="button" onclick="javascript:load_user();" value="获取用户信息" />
</body>
</html>
四、测试
分享到:
相关推荐
struts2-json-plugin,Struts JSON插件
`struts2-json-plugin-2.1.8.1.jar` 则是Struts 2框架的一个插件,主要用于增强Struts 2对JSON的支持。Struts 2是一款非常流行的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。这个插件允许...
`struts2-json-plugin`是Struts2的一个插件,它使得Struts2能够处理JSON请求和响应,无需额外的配置或库。这个插件不仅包含了源码,还包含了必要的配置文件和类,使得开发者可以深入理解其工作原理并进行自定义扩展...
在实际开发中,为了使用这个插件,你需要将`struts2-json-plugin-2.3.8.jar`文件放入项目的类路径(classpath)下,然后在Struts2的配置文件(通常为struts.xml)中启用JSON插件。在Action类中,定义返回JSON数据的...
使用Struts2 JSON插件时,需要注意JSON/XML注入的安全风险。攻击者可能尝试通过构造恶意输入来操纵JSON响应,因此确保对用户输入进行适当验证和过滤至关重要。 6. **性能优化**: - 对于大型应用,可以通过调整...
要使用此插件,首先需要在Struts2的配置文件(如struts-default.xml或struts-plugin.xml)中引入JSON插件的配置,通常会添加以下XML代码: ```xml <constant name="struts.enable.SlashesInActionNames" value=...
Struts2 JSON Plugin是Apache Struts框架的一个扩展插件,主要功能是为Struts2提供JSON(JavaScript Object Notation)支持。JSON是一种轻量级的数据交换格式,它使得客户端(通常为JavaScript)与服务器端之间进行...
如果您的项目中使用了Struts2并且需要与JSON数据交互,这个插件是必不可少的。 接着是`struts2-junit-plugin-2.1.8.jar`,这是一个用于Struts2的JUnit测试插件。它扩展了JUnit,使得Struts2的控制器可以在单元测试...
Struts2-Json-Plugin 是一个专门为 Struts2 框架设计的插件,它使得在Struts2中处理Ajax请求并返回JSON数据变得更加简便。这个插件提供了"json"结果类型,允许Action直接被序列化为JSON格式,极大地简化了开发过程。...
struts2-json-plugin-2.2.3-sources.jar 源码
在本资源包"struts-2.5.20-all"中,包含了Struts 2框架的完整版本,以及`struts2-json-plugin.jar`插件,专门用于处理JSON(JavaScript Object Notation)数据。 **Struts 2框架核心概念:** 1. **Action类**:...
Struts2-Json-Plugin 是一个专门为 Struts2 框架设计的插件,它使得在Struts2中能够方便地处理JSON数据,从而更好地支持Ajax请求。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前端与后端...
1. **配置JSON插件**:首先,要在Struts2中启用JSON支持,我们需要在`struts.xml`配置文件中添加JSON插件的配置。这通常包括注册插件以及指定哪些Action需要返回JSON响应。 ```xml <constant name="struts.enable....
5. **freemarker.jar**:FreeMarker是一个模板引擎,Struts2使用它来渲染视图。 6. **commons-fileupload.jar** 和 **commons-io.jar**:用于处理文件上传。 7. **javassist.jar**:动态代码生成库,Struts2在某些...
首先,这个压缩包中可能包含了`struts2-json-plugin-x.x.x.jar`,这是Struts2的JSON插件,它扩展了Struts2的核心功能,允许Action结果以JSON格式返回。这个插件实现了将Action的属性自动转换为JSON对象的功能,简化...
4. **struts2-json-plugin-2.1.8.1.jar**:这是Struts2的JSON插件,实现了在Struts2应用中支持JSON的Action结果类型。通过这个插件,开发者可以直接将Action的结果以JSON格式返回给客户端,无需额外的序列化工作。 ...
Struts2 JSON Plugin 2.1.8 是一个专门针对Apache Struts2框架设计的插件,用于支持JSON(JavaScript Object Notation)数据格式的处理。这个插件使得Struts2应用程序能够方便地生成和消费JSON,从而在Web应用中实现...
6. **struts2-spring-plugin**: 如果使用Spring框架,这个插件能实现Struts2与Spring的无缝集成,包括Action的依赖注入和事务管理。 7. **其他依赖库**:如ognl(Object-Graph Navigation Language)用于表达式语言...