struts2 和ajax整合使用案例(原生态的ajax操作 和 struts2和ajax整合操作)
来源:互联网 发布:哪个软件可以写日记 编辑:程序博客网 时间:2024/04/29 23:48
struts2和ajax整合使用案例(原生态的ajax操作 和 struts2和ajax整合操作)
struts2使用ajax的方式有两种:
原生态的ajax操作(不需要整合包) 和 struts2和ajax整合操作(需要整合包)
下面将演示两种方式:
struts2项目中需要的使用的包:
两种方式都需要使用jquery.js文件,整合方式的还需要json.js文件
方式一(原生态的ajax操作(不需要整合包)):
示例代码:
1、web.xml 配置过滤器
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://xmlns.jcp.org/xml/ns/javaee"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"id="WebApp_ID" version="3.1"><display-name>Struts202</display-name><!--配置过滤器 --><filter><filter-name>front</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>front</filter-name><url-pattern>*.action</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>
2、StrutsAndAjaxAction.java 处理请求Action类
package cn.sz.action;import java.io.IOException;import java.io.PrintWriter;import org.apache.struts2.ServletActionContext;public class StrutsAndAjaxAction {// 使用普通属性传值的方式结束页面参数过来的参数,这里的属性名和页面的变量名一致private String name;private String pwd;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String login() throws IOException {// 输出接收的信息System.out.println(name + "," + pwd);// 测试原生态的struts和ajax操作String str = "{\"name\":\"fuwuqi\",\"pwd\":\"123\"}";PrintWriter out = ServletActionContext.getResponse().getWriter();out.write(str);out.flush();out.close();return "main";}}
3、主配置文件struts.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"><struts><package name="sa" extends="struts-default" namespace="/sa"><action name="sa" class="cn.sz.action.StrutsAndAjaxAction"method="login"></action></package></struts>
4、请求页面 ajax.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-2.0.0.js"></script><script type="text/javascript" src="js/json2.js"></script><script type="text/javascript">$(function() {$("#bu1").click(function() {$.ajax({url : "sa/sa.action",type : "get",data : {name : "zhsan",pwd : "123"},success : function(data) {var p = eval("(" + data + ")");$("#s").text(p.name + "," + p.pwd);},error : function(data) {alert(data);}});});});</script><title></title></head><body><button id="bu1">原生态的ajax操作</button><br /> 请求响应内容:<span id="s"></span></body></html>
完成代码后将项目部署到服务器,访问 http://localhost:8080/Struts202/ajax.jsp ;接着按下图操作,即实现了原生态struts2使用ajax
方式二 (struts2和ajax整合操作(需要整合包)):
示例代码:
1、web.xml 配置过滤器
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://xmlns.jcp.org/xml/ns/javaee"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"id="WebApp_ID" version="3.1"><display-name>Struts202</display-name><!--配置过滤器 --><filter><filter-name>front</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>front</filter-name><url-pattern>*.action</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>
2、StrutsAndAjaxAction.java 处理请求Action类
package cn.sz.action;import java.io.IOException;import java.io.PrintWriter;import org.apache.struts2.ServletActionContext;public class StrutsAndAjaxAction {// 使用普通属性传值的方式结束页面参数过来的参数,这里的属性名和页面的变量名一致private String name;private String pwd;// 添加一个属性,用于返回响应结果private String result;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String getResult() {return result;}public void setResult(String result) {this.result = result;}public String login() throws IOException {// 输出接收的信息System.out.println(name + "," + pwd); 测试struts和ajax整合的方式 String str1 = "{\"name\":\"struts2\",\"pwd\":\"1230\"}"; result = str1;return "main";}}
3、主配置文件struts.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"><struts><package name="sa" extends="json-default" namespace="/sa"><action name="sa" class="cn.sz.action.StrutsAndAjaxAction"method="login"><result name="main" type="json"><param name="root">result</param></result></action></package></struts>
注:在struts和ajax整合时需要package继承 json-default
4、请求页面 ajax.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-2.0.0.js"></script><script type="text/javascript" src="js/json2.js"></script><script type="text/javascript"> $(function() {$("#bu2").click(function() {$.ajax({url : "sa/sa.action",type : "get",data : {name : "lisi",pwd : "123"},success : function(data) {var p = JSON.parse(data);$("#s").text(p.name + "," + p.pwd);},error : function(data) {alert(data);}});});});</script><title></title></head><body><button id="bu2">struts2和ajax整合操作</button> <br /> 请求响应内容:<span id="s"></span></body></html>
完成代码后将项目部署到服务器,访问 http://localhost:8080/Struts202/ajax.jsp ;接着按下图操作,即实现了struts2和ajax整合
阅读全文
0 0
- struts2 和ajax整合使用案例(原生态的ajax操作 和 struts2和ajax整合操作)
- struts2和ajax整合
- Struts2和Ajax的整合问题
- js原生态的Ajax实现+Struts2
- Struts2整合Jquery Ajax
- Struts2 整合ajax:
- S2和ajax整合
- 头疼的struts2和Ajax
- struts2 和 ajax的交互
- 关于Struts2和ajax
- Struts2中的Action配合jQuery和Ajax操作
- Ajax+Struts2+Spring+Hibernate整合
- Ajax+Struts2+Spring+Hibernate整合
- Ajax+Struts2+Spring+Hibernate整合
- Struts2+ajax+json整合简介
- Struts2+ajax+json整合简介
- struts2与ajax的整合总结
- Struts2+Spring 整合成功测试案例----利用Dojo实现简单的Ajax的效果(一) .
- js输入款字母数字正则
- jdk1.8HashMap源码实现分析
- 使用Cobbler批量安装操作系统
- eclipse编译错误
- C语言作业
- struts2 和ajax整合使用案例(原生态的ajax操作 和 struts2和ajax整合操作)
- layui 复选框等内置控件不显示问题
- Linux usb子系统(一) _写一个usb鼠标驱动
- LeetCode----- 86.Partition List
- Servlet详解(二)
- sqlite API
- Python之format函数
- linux删除回收站
- linux基本命令