`

Struts2+jQuery+Ajax

 
阅读更多

一个简单的Json实例,采用Struts2 + jQuery1.4.js +ajax

主要做法是在后台action中把List集合手动转成json格式的数据,然后,到前台页面显示。 也可以通过json插件的方式把Map集合转成json.  主要用到了struts2的核心包 +json-lib-2.1.jar ,jsonplugin-0.34.jar等等。 

package org.test.action;
import net.sf.json.JSONObject;
public class AjaxLoginAction extends ActionSupport {
	private static final long serialVersionUID = 8955525425647194202L;
	// 用户Ajax返回数据
	private String result;
	private String loginName;
	private String password;
        //getter 和setter方式省略;

	@Override
	public String execute() {
		// 用一个Map做例子
		Map<String, String> map = new HashMap<String, String>();

		// 为map添加一条数据,记录一下页面传过来loginName
		map.put("name", this.loginName);
		map.put("password",this.password);

		List<Person> listPersons = new ArrayList<Person>();
		Person person1 = new Person();
		person1.setAddress("株洲");
		person1.setId("100");
		person1.setName("张三");
		
		Person person2 = new Person();
		person2.setAddress("长沙");
		person2.setId("200");
		person2.setName("李四");
		listPersons.add(person1);
		listPersons.add(person2);
		
		//将要返回的map对象进行json处理
		JSONObject jo = JSONObject.fromObject(map);
		
		//传把list集合转成json格式;
		String json = listConvertJson(listPersons);
		
		//调用json对象的toString方法转换为字符串然后赋值给result
		this.result = json;

		System.out.println(this.result);
		return SUCCESS;
	}
	
	/**
	 * list转成Json格式;
	 * @param list
	 * @return
	 */
	public String listConvertJson(List<Person> list){
		StringBuffer sb = new StringBuffer();
		sb.append("[");
		for(int i =0;i<list.size();i++){
			sb.append("{");
			sb.append("\"name\":").append("\""+list.get(i).getName()+"\"").append(",");
			sb.append("\"address\":").append("\""+list.get(i).getAddress()+"\"").append(",");
			sb.append("\"id\":").append("\""+list.get(i).getId()+"\"");
			sb.append("}");
			if(list!=null && list.size()>0 && list.size()-1 != i){
				sb.append(",");
			}
		}
		sb.append("]");
		return sb.toString();
	}
}

 转成json格式为:

[{"name":"张三","address":"株洲","id":"100"},{"name":"李四","address":"长沙","id":"200"}]

其中“[]”代表的是数组,“{}”代表的是具体的对象。

然后前台javascript使用如下方式解析即可:

var member = eval("("+data+")");	//包数据解析为json 格式  
for(var i = 0;i<member.length;i++){
	alert(member[i].name+","+member[i].id+","+member[i].address);
}

  

分享到:
评论
1 楼 sk1941qq 2014-01-14  
JSONObject jo = JSONObject.fromObject(map);   这句你根本没用到呢~

相关推荐

    Struts2+Jquery+Ajax

    6. Struts2与Ajax的集成,使用JQuery的$.ajax()或$.getJSON()方法 7. 请求与响应的处理,包括参数传递和数据封装 8. 实例演示:使用Struts2+Jquery+Ajax实现动态加载数据或表单验证 "struts2 jar"文件包含了Struts2...

    struts2+jquery+ajax

    struts2+jquery+ajax实现验证功能

    struts2+jquery+ajax文件异步上传

    Struts2、jQuery和Ajax是Web开发中的三个关键组件,它们共同构成了文件异步上传的基础框架。这个项目是在MyEclipse环境下实现的一个简单的文件上传功能,让我们深入了解一下这些技术及其在文件上传中的应用。 首先...

    struts2+ajax+jquery

    在这个"struts2+ajax+jquery"的主题中,我们将深入探讨如何利用Struts2、jQuery和Ajax技术实现Web页面的异步交互。 首先,Struts2作为MVC框架,它的核心是Action,它负责处理用户的请求,并通过配置的Result返回...

    struts2+ajax+jquery异步批量上传超大文件

    struts2+ajax+jquery异步批量上传超大文件,单文件最大支持2G,一次文件数量,文件大小都可设置。简单明了。绝对可用,稍微懂点的就可以修改为自己所用。你值得拥有! 我会分享给大家更多更好的东西,希望支持!

    Java中:struts2+jQuery+ajax调用(引用)

    Java中:struts2+jQuery+ajax调用(引用) 代码,解析,源码,demo,实例,分析

    struts2+jquery+ajax实现头像上传切割图片

    "Struts2+jQuery+Ajax实现头像上传切割图片"是一个典型的Web开发技术组合,它结合了Struts2作为后端MVC框架,jQuery作为前端JavaScript库,以及Ajax进行异步数据传输,来提供流畅的图片上传和裁剪功能。以下将详细...

    struts2 + jquery +ajax 登录验证

    Struts2、jQuery和Ajax是Web开发中的三大关键技术,它们结合使用可以构建高效、动态且用户友好的登录验证系统。以下是对这些技术及其在登录验证中的应用的详细说明。 Struts2是一个基于MVC(Model-View-Controller...

    Struts2+Jquery+ajax+Json代码案例

    Struts2、jQuery、Ajax 和 JSON 是Web开发中常见的技术栈,它们共同作用于构建动态、交互式的Web应用程序。在“Struts2 Jquery ajax Json实现的一个完整案例”中,这些技术结合使用,以提高用户体验并优化服务器通信...

    Struts2+jQuery+ajax+mySql实现省市二级联动

    本篇文章将深入探讨如何使用Struts2、jQuery、ajax以及MySQL来实现这一功能。 首先,Struts2是一款强大的MVC(模型-视图-控制器)框架,它简化了Java Web开发。在省市联动的场景中,Struts2主要负责处理用户的请求...

    struts2+jquery+ajax+servlet

    而在“jQuery+Ajax+Struts2”的例子中,Struts2 Action作为Ajax请求的终点,处理业务逻辑并返回结果。Struts2的配置文件(struts.xml)会定义Action和Result的映射,而Action类会处理请求并返回一个ActionResult,这...

    struts2+jquery+json+ajax例子

    Struts2、jQuery、JSON和Ajax是Web开发中常见的技术栈,它们共同为构建动态、交互式的用户界面提供了强大的支持。下面将详细解释这些技术及其在登录示例中的应用。 Struts2是一个基于MVC(Model-View-Controller)...

    Struts2+jQuery(不用JSON)实现局部刷新

    Struts2作为MVC框架,主要用于处理后端业务逻辑,而jQuery则是一个强大的JavaScript库,简化了前端DOM操作、事件处理以及AJAX交互。在这个“Struts2+jQuery实现局部刷新”的主题中,我们将探讨如何利用这两者的优势...

    struts2+ajax+jquery异步批量上传超大文件.zip

    struts2+ajax+jquery异步批量上传超大文件.zip struts2+ajax+jquery异步批量上传超大文件.zip struts2+ajax+jquery异步批量上传超大文件.zip struts2+ajax+jquery异步批量上传超大文件.zip struts2+ajax+jquery异步...

    struts2+json+jquery实现ajax数据的存取

    "Struts2+JSON+jQuery实现Ajax数据的存取"就是一个典型的示例,它结合了强大的MVC框架Struts2、轻量级的数据交换格式JSON以及高效的前端库jQuery,以实现网页上的无刷新数据交互。下面将详细介绍这三个技术及其在...

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。 4.在服务端分页查询功能,优点:实时性:跳页才查询。数据量小:只加载当前页的记录进行显示。 5.单数据源配置(兼容Tomcat和Weblogic)。 6.Hibernate...

    struts2+jQuery+json实现AJAX.zip

    struts2+jQuery+json实现AJAX.zip

    struts2+JQuery完整集成lib包

    3. **Struts2与jQuery的Ajax集成**:Struts2提供了内置的Ajax支持,如Struts2-jQuery插件,它扩展了Struts2框架,提供了与jQuery的无缝集成。通过使用这个插件,你可以轻松地创建Ajax化的Struts2 Action,例如使用sj...

    毕业设计项目struts2+hibernate+spring+jquery+ajax+css

    导入myclipse即可,MySql...项目介绍: 1.struts2.8.1+hibernate3+spring2.5 2.统一的jquery表单验证方式,复用性强 3.jquery+ajax应用 4.界面风格漂亮, 本人的毕业设计,有需要者下载参考,项目有很多代码注释

Global site tag (gtag.js) - Google Analytics