`
mamaoyuan625
  • 浏览: 177010 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

struts2+jquery实现ajax

阅读更多

简单介绍struts+jquery实现ajax步骤,前提是你了解struts2 和jquery,

要求:从页面上点击一个button,从action中获取数据,当然是异步刷新,项目开发中一般还要附带一些带条件的数据传到action中(如分页信息,当前页,等)

第一步:

新建一个web项目

把struts需要的jar包copy到lib里面,还要其他包json.jar等,可以随后下载。

增加一个struts.xml文件

  第二步:

在web.xml中如下配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<filter>
		<!-- 定义核心Filter的名字 -->
		<filter-name>struts2</filter-name>
		<!-- 定义核心Filter的实现类 -->
		<filter-class>
			org.apache.struts2.dispatcher.FilterDispatcher
			</filter-class>
	</filter>

	<!-- FilterDispatcher用来初始化Struts 2并且处理所有的Web请求 -->
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	
</web-app>

 第三步:页面的信息如下

<script type="text/javascript" src="jquery-1.3.2.min.js"></script>

 

		<div id="result">

		</div>

		
Name:<input type="text" name="user.name">
Age:<input type="text" name="user.age">
<input type="button" id="btn" value="查看">
	</body>

 

第四步:action类 user实体类

 

public class JsonAction extends ActionSupport {
	private static final long serialVersionUID =

	7044325217725864312L;

	private User user;

	// 把从返回的结果保存中data中

	private String data;

	//省略set get方法

	public String execute() throws Exception {
// 此处的this.user,是从页面得到的数据封装成了一个User对象
	System.out.println(this.user.getAge()+":"+this.user.getName());
	//在这里模拟从数据库中得到的数据 当然也可以是List<User>
// JSONArray js = new JSONArray(); //只是 针对json数组
 //js.add(u);
// js.add(u2);
//js.toString();

		User u =  new User();
		u.setAge(22);
		u.setName("MMMMM");
		JSONObject jo = JSONObject.fromObject(u); //针对json对象
		System.out.println(jo);

// 调用json对象的toString方法转换为字符串然后赋值给data

		this.data = jo.toString();

		return this.SUCCESS;

	}

 

User.java

	private String name;
	private int age

 

第五步:配置struts.xml

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
	<constant name="struts.i18n.encoding" value="UTF-8"></constant>
	<package name="ttttt" extends="json-default">
		<action name="jsonAction" class="com.action.JsonAction">

			<result type="json">
				<!-- 因为要将reslut的值返回给客户端,所以这样设置 -->
				<!-- root的值对应要返回的值的属性 -->
				<param name="root">result</param>
			</result>

		</action>
	</package>
</struts>

 第六步:开始写页面的js ,展示返回的数据

$(document).ready(function() {


// 直接把onclick事件写在了JS中

$("#btn").click(function() {

// 序列化表单的值
			
			var params = $("input").serialize();
			$.ajax({
			// 请求的url
			url : "jsonAction.action",
			// 发送方式
			type : "post",
			// 接受数据格式
			dataType : "json",
			// 要传递的数据
			data : params,
			// 回传函数
			success : querydata
			
			});
			});
			});
			
			function querydata(data) { 
			
			var json = eval( "("+data+")" );
			
			var str = "姓名:" + json.name + "<br />";
			 str += "年龄:" + json.age + "<br />";
			
			$("#result").html(str);
}


 第七步:

部署访问

就可以看到只是局部刷新

下边的项目访问:http://localhost:8080/a/index22.jsp 所有的jar包都在lib中 如导入有错的话,请新建项目之后copy src目录和webRoot即可

  • a.rar (4.3 MB)
  • 下载次数: 874
分享到:
评论
2 楼 spp_1987 2010-07-21  
tuo_bing 写道
        User u =  new User();  
        u.setAge(22);  
        u.setName("MMMMM");
如果返回的是一个 List<User> 如何处理?

用JSON对象进行处理就可以.我博客里面有关于这类收藏的文章
1 楼 tuo_bing 2010-02-24  
        User u =  new User();  
        u.setAge(22);  
        u.setName("MMMMM");
如果返回的是一个 List<User> 如何处理?

相关推荐

    Struts2 + jQuery 实现ajax.txt

    ### Struts2 + jQuery 实现Ajax交互的关键技术与实践 #### 概述 在Web开发领域,使用Struts2框架结合jQuery实现Ajax交互是一种常见的做法。这种组合不仅可以提高Web应用程序的响应速度,还能显著提升用户体验。...

    Struts2+Jquery+Ajax

    8. 实例演示:使用Struts2+Jquery+Ajax实现动态加载数据或表单验证 "struts2 jar"文件包含了Struts2框架的核心库,可能包括struts2-core、struts2-convention、struts2-json-plugin等依赖,这些是开发Struts2应用必...

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

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

    Struts2 + jQuery+JSON 实现ajax

    ### Struts2 + jQuery + JSON 实现Ajax 在现代Web开发中,Ajax技术因其能够实现网页的局部刷新而被广泛采用。本篇文章介绍如何利用Struts2框架结合jQuery与JSON来构建一个简单的Ajax功能。 #### 一、环境搭建 1. ...

    struts2+jquery+ajax

    struts2+jquery+ajax实现验证功能

    Struts2+Jquery实现ajax并返回json类型数据

    在本教程中,我们将探讨如何结合使用Struts2和jQuery来实现一个使用Ajax发送请求并接收JSON类型数据的功能。 首先,我们需要在JSP页面中使用jQuery发起Ajax请求。jQuery的`$.ajax()`函数是实现这一功能的核心。例如...

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

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

    struts2+jQuery+json实现AJAX.zip

    struts2+jQuery+json实现AJAX.zip

    struts2+ajax+jquery

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

    struts2+jquery+ajax文件异步上传

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

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

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

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

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

    struts2+jquery+json+ajax例子

    总结起来,"struts2+jquery+json+ajax"的例子展示了如何利用这些技术协同工作,实现一个无刷新的登录界面,提供流畅的用户体验。通过Struts2处理业务逻辑和数据验证,jQuery和Ajax负责前后端的通信,JSON作为数据...

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

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

    struts2 + jquery +ajax 登录验证

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

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

    在这个“Struts2+jQuery实现局部刷新”的主题中,我们将探讨如何利用这两者的优势来实现页面的无刷新更新。 1. **Struts2框架介绍**: Struts2是一个基于MVC设计模式的Java Web框架,它提供了良好的结构和可扩展性...

    Struts2+Jquery+ajax+Json代码案例

    在“Struts2 Jquery ajax Json实现的一个完整案例”中,这些技术结合使用,以提高用户体验并优化服务器通信。 **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它简化了开发过程,提供...

    使用struts2+JQuery实现的简单的ajax例子

    在这个简单的Ajax例子中,我们将探讨如何整合Struts2和jQuery来实现页面无刷新的数据更新。 首先,我们需要在项目中引入Struts2和jQuery的相关依赖。Struts2通常通过Maven或Gradle添加依赖库,包括核心库、struts2-...

    struts2+jquery+ajax+servlet

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

Global site tag (gtag.js) - Google Analytics