`

使用Struts2+Gson+JQuery实现异步请求JSON对象

阅读更多
源地址:http://www.v5cn.cn
GSON是Google公司的Java对象序列化成JSON的插件
下载地址:http://code.google.com/p/google-gson/downloads/list
下载下来以后:把gson-1.4.jar这个jar文件加到工程里。
Action的使用方式是:
package test.gson;

import java.io.PrintWriter;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

import com.google.gson.Gson;
import com.opensymphony.xwork2.ActionSupport;

public class TestGson extends ActionSupport {
	private static final long serialVersionUID = 1L;
	private Users user;
	public Users getUser() {
		return user;
	}
	public void setUser(Users user) {
		this.user = user;
	}
	@Override
	public String execute() throws Exception {
		user = new Users();
		user.setId(10000);
		user.setUserName("zhangsan");
		user.setPwd("000000");
		user.setEmail("zhangsan@sina.com");
		
		Gson g  = new Gson();
		String json = g.toJson(user);
		HttpServletResponse response = ServletActionContext.getResponse();
		response.setContentType("application/json;charset=utf-8");
		response.setHeader("Cache-Control","no-cache");
		
		PrintWriter pw = response.getWriter();
		pw.print(json);
		pw.flush();
		pw.close();
		
		
		return null;
	}
}

其中response.setContentType("application/json;charset=utf-8");是最重要的
一定要把ContentType设置成application/json形式
struts.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<package name="jsons" extends="struts-default" namespace="/">
		<action name="testGson" class="test.gson.TestGson"></action>
	</package>
</struts>

Gson其实可以用在所有的Javaweb工程了,不一定是Struts2
分享到:
评论

相关推荐

    struts2~json~gson~jquery~ajax简单应用

    以下是一个简单的示例,展示了如何使用Struts2结合Gson和jQuery实现Ajax请求: 1. **Index.jsp页面**:展示了一个按钮,点击按钮时触发Ajax请求。 ```html &lt;script type="text/javascript" src="js/jquery-1.4.2...

    struts2+json+ajax整合例子(导入即可运行,附带详细教程)

    总的来说,"Struts2+json+ajax整合例子"是一个实用的教学资源,帮助开发者了解如何在实际项目中利用这些技术进行高效的Web开发。通过学习和实践这个例子,开发者可以提升其在Web应用程序开发中的技能。

    jquery的ajax传json对象数组到struts2的action

    在Web开发中,jQuery的AJAX功能经常被用于与服务器进行异步数据交换,而Struts2作为一款流行的Java Web框架,提供了处理前端请求的能力。本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action...

    jquery+struts2实现异步刷新锁需要的包

    标题中的"jquery+struts2实现异步刷新锁需要的包"表明我们需要的是一套特定的依赖包,用于整合jQuery和Struts2来实现在服务器端控制异步更新的逻辑。这通常涉及到以下组件: 1. **jQuery库**:这是JavaScript的一个...

    struts2+json的使用

    5. 前端处理:前端通过AJAX请求Struts2的Action,然后使用JavaScript(如jQuery)解析返回的JSON数据,并更新页面内容。 三、注意事项 1. 数据安全:确保返回的JSON数据不包含敏感信息,防止XSS(跨站脚本攻击)和...

    Struts2.1.8 AJAX 读取XML,GSON,jQuery JSON

    在Struts2中,可以使用GSON库将Java对象序列化为JSON字符串,再通过AJAX发送到客户端,这样前端就可以用JavaScript解析JSON数据并更新DOM。 jQuery是一个广泛使用的JavaScript库,简化了HTML文档遍历、事件处理、...

    struts2+Json 点击按钮加载用户列表

    结合JSON(JavaScript Object Notation)技术,可以实现前后端数据的高效交互,尤其是在实现异步请求和动态数据更新时。这篇博客文章“struts2+Json 点击按钮加载用户列表”显然探讨了如何在Struts2中使用JSON来实现...

    AJAX和struts2传递JSON数组

    总结来说,通过这种方式,我们可以利用AJAX向Struts2 Action传递JSON数组,实现异步数据交互。这在动态更新页面内容、处理表单提交等场景下非常有用。同时,使用JSON作为数据交换格式,使得前后端的数据交换变得更加...

    json_struts2.rar_JSON java_SSH json Struts2_java json_json_strut

    在JSON与Struts2的结合中,jQuery可以发送异步请求到服务器,以JSON格式获取或提交数据,然后在不刷新整个页面的情况下更新视图。 在"json_struts2.rar"这个压缩包中,可能包含了以下关键知识点: 1. **JSON序列化...

    SSH1,JQuery的ajax返回json二维数组处理过程

    在本文中,我们将探讨如何使用SSH1框架与jQuery的AJAX功能来处理JSON二维数组,特别是在实现菜单联动下拉框的场景中。SSH1(Spring、Struts、Hibernate)是Java开发中的一个流行MVC框架组合,而jQuery的AJAX功能则...

    struts2_spring_json.rar_liferay struts2 json_portlet json_spring

    5. **AJAX请求与响应**:学习如何使用JavaScript(可能包括jQuery或其他库)发起异步请求,以及如何解析接收到的JSON数据并更新portlet视图。 6. **Liferay Portal API**:可能涉及到如何使用Liferay提供的API来注册...

    struts2-jsondemo

    例如,使用jQuery的`$.getJSON()`方法发送异步请求,然后用`$.each()`遍历数据并渲染到页面上。 4. **Servlet与JSON交互**:在Servlet中,我们可以使用`HttpServletResponse`对象的`write()`方法直接输出JSON字符串...

    struts2和json集成的一个小示例

    可以使用jQuery或者其他JavaScript库发送异步请求,接收返回的JSON数据,并在客户端进行解析和展示。 ```javascript $.ajax({ url: "getUser.action", type: "POST", dataType: "json", success: function(data...

    json struts2 ajax文件上传 input type=file,选择相同文件也提交 附带类库

    3. JSON库,如Gson或Jackson,用于将Java对象转换为JSON字符串,以便于Ajax传输。 4. JavaScript库,如jQuery,简化Ajax请求的编写。 在MyEclipse中,你可以创建一个Struts2项目,导入所需的依赖库,然后按照上述...

    ajax struts 无刷新访问后台返回json数据

    例如,使用Gson库将Java对象转换为JSON字符串: ```java Gson gson = new Gson(); String jsonString = gson.toJson(yourObject); ``` - **设置响应头**:为了让浏览器知道返回的是JSON数据,需要在HTTP响应头中...

    jsp中利用jquery+ajax在前后台之间传递json格式参数.docx

    在Java中,可以使用诸如`org.json`库或者Gson库来创建JSON对象。例如,使用`JSONArray`或`JSONObject`创建JSON对象,然后通过`response.getWriter().print(jsonArray.toString())`将JSON对象写入到响应流中,确保...

    J2EE中JSON+Jquery_AJAX应用[定义].pdf

    在J2EE开发中,JSON(JavaScript Object Notation)和JQuery_AJAX的结合使用是实现页面动态加载和异步数据交互的关键技术。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JQuery_...

    struts json经典小例子

    在这个“struts json经典小例子”中,我们将会看到如何结合Struts和JSON,使得jQuery能够直接与服务器进行异步通信,提升用户体验。首先,我们需要理解Struts的Action类,它是处理用户请求的核心,通常会返回一个...

Global site tag (gtag.js) - Google Analytics