`

struts2-json-plugin插件的使用

阅读更多
一、编写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

    struts2-json-plugin,Struts JSON插件

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    `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-json-plugin`是Struts2的一个插件,它使得Struts2能够处理JSON请求和响应,无需额外的配置或库。这个插件不仅包含了源码,还包含了必要的配置文件和类,使得开发者可以深入理解其工作原理并进行自定义扩展...

    struts2-json-plugin-2.3.8.jar

    在实际开发中,为了使用这个插件,你需要将`struts2-json-plugin-2.3.8.jar`文件放入项目的类路径(classpath)下,然后在Struts2的配置文件(通常为struts.xml)中启用JSON插件。在Action类中,定义返回JSON数据的...

    struts2 相关jar包 包含json-lib-2.1.jar+struts2-json-plugin-2.1.8.1.jar

    使用Struts2 JSON插件时,需要注意JSON/XML注入的安全风险。攻击者可能尝试通过构造恶意输入来操纵JSON响应,因此确保对用户输入进行适当验证和过滤至关重要。 6. **性能优化**: - 对于大型应用,可以通过调整...

    struts2-json-plugin-2.1.8.1.jar

    Struts2 JSON Plugin是Apache Struts框架的一个扩展插件,主要功能是为Struts2提供JSON(JavaScript Object Notation)支持。JSON是一种轻量级的数据交换格式,它使得客户端(通常为JavaScript)与服务器端之间进行...

    struts-json-plugin-2.1.8.jar struts2-junit-plugin-2.1.8.jar json-lib-2.1.jar

    如果您的项目中使用了Struts2并且需要与JSON数据交互,这个插件是必不可少的。 接着是`struts2-junit-plugin-2.1.8.jar`,这是一个用于Struts2的JUnit测试插件。它扩展了JUnit,使得Struts2的控制器可以在单元测试...

    struts2-json-plugin-2.1.8jar包.zip

    要使用此插件,首先需要在Struts2的配置文件(如struts-default.xml或struts-plugin.xml)中引入JSON插件的配置,通常会添加以下XML代码: ```xml &lt;constant name="struts.enable.SlashesInActionNames" value=...

    Struts2-Json-Plugin 的使用.pdf

    Struts2-Json-Plugin 是一个专门为 Struts2 框架设计的插件,它使得在Struts2中处理Ajax请求并返回JSON数据变得更加简便。这个插件提供了"json"结果类型,允许Action直接被序列化为JSON格式,极大地简化了开发过程。...

    struts2-json-plugin-2.2.3 源码

    struts2-json-plugin-2.2.3-sources.jar 源码

    struts-2.5.20-all(含struts2-json-plugin.jar)jar资源

    在本资源包"struts-2.5.20-all"中,包含了Struts 2框架的完整版本,以及`struts2-json-plugin.jar`插件,专门用于处理JSON(JavaScript Object Notation)数据。 **Struts 2框架核心概念:** 1. **Action类**:...

    Struts2-Json-Plugin 的使用.docx

    Struts2-Json-Plugin 是一个专门为 Struts2 框架设计的插件,它使得在Struts2中能够方便地处理JSON数据,从而更好地支持Ajax请求。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前端与后端...

    struts2--json包

    1. **配置JSON插件**:首先,要在Struts2中启用JSON支持,我们需要在`struts.xml`配置文件中添加JSON插件的配置。这通常包括注册插件以及指定哪些Action需要返回JSON响应。 ```xml &lt;constant name="struts.enable....

    (struts2-json-plugin-2.2.1)struts2 json-default配置中需要的jar包

    5. **freemarker.jar**:FreeMarker是一个模板引擎,Struts2使用它来渲染视图。 6. **commons-fileupload.jar** 和 **commons-io.jar**:用于处理文件上传。 7. **javassist.jar**:动态代码生成库,Struts2在某些...

    struts2-json-lib

    首先,这个压缩包中可能包含了`struts2-json-plugin-x.x.x.jar`,这是Struts2的JSON插件,它扩展了Struts2的核心功能,允许Action结果以JSON格式返回。这个插件实现了将Action的属性自动转换为JSON对象的功能,简化...

    struts2-json包集合 不会出现任何报错

    4. **struts2-json-plugin-2.1.8.1.jar**:这是Struts2的JSON插件,实现了在Struts2应用中支持JSON的Action结果类型。通过这个插件,开发者可以直接将Action的结果以JSON格式返回给客户端,无需额外的序列化工作。 ...

    struts2-json-plugin-2.1.8.zip_Java 8_json-plugin-2.1.8

    Struts2 JSON Plugin 2.1.8 是一个专门针对Apache Struts2框架设计的插件,用于支持JSON(JavaScript Object Notation)数据格式的处理。这个插件使得Struts2应用程序能够方便地生成和消费JSON,从而在Web应用中实现...

    struts-2.5所有jar包

    6. **struts2-spring-plugin**: 如果使用Spring框架,这个插件能实现Struts2与Spring的无缝集成,包括Action的依赖注入和事务管理。 7. **其他依赖库**:如ognl(Object-Graph Navigation Language)用于表达式语言...

Global site tag (gtag.js) - Google Analytics