首页 > 代码库 > Struts2+Jquery+Json集成
Struts2+Jquery+Json集成
1.新建web项目,引入相关jar包。包括struts2核心包、commons相关包、Json相关包(这些jar包都可以在struts2的lib文件夹中找到)
2.引入jquery-1.8.2.min.js
3.在web.xml中配置struts2的"核心控制器"
1 <!-- 配置struts2的核心控制器 --> 2 <filter> 3 <filter-name>struts2</filter-name> 4 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 5 </filter> 6 7 <filter-mapping> 8 <filter-name>struts2</filter-name> 9 <url-pattern>/*</url-pattern>10 </filter-mapping>
3.ajax请求页面(index.jsp):
1 <head> 2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 3 <title>Insert title here</title> 4 <!-- 引入jquery.js文件 --> 5 <script type="text/javascript" src="js/jquery-1.8.2.min.js" charset="utf-8"></script> 6 <script type="text/javascript"> 7 function btn(){ 8 $(‘#btn‘).bind(‘click‘, function(){ 9 $.ajax({10 type:‘post‘,11 url:‘json_executeAjax.action‘,12 data:{13 name : $(‘#userName‘).val()14 },15 dataType:‘json‘,16 success:function(data){17 console.info(data);18 },19 error:function(){20 alert(‘系统异常,请联系管理员‘);21 }22 }); 23 });24 }25 //加载完毕,调用函数26 $(document).ready(function(){27 btn();28 }); 29 30 </script>31 32 </head>33 <body>34 <input type="text" name="userName" id="userName"/>35 <input type="button" value="ajax请求" id="btn"/>36 </body>
4.action:
1 package com.xyy.action; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 import net.sf.json.JSONObject; 6 import com.opensymphony.xwork2.Action; 7 8 public class JsonAction { 9 10 private String name;11 //存储返回结果,并在struts.xml中配置12 private String result;13 14 public String getResult() {15 return result;16 }17 18 public void setResult(String result) {19 this.result = result;20 }21 22 public String getName() {23 return name;24 }25 26 public void setName(String name) {27 this.name = name;28 }29 30 public String executeAjax(){31 Map<String, Object> map = new HashMap<String, Object>();32 map.put("name", name);33 //将Map转换成json对象34 JSONObject json = JSONObject.fromObject(map);35 result = json.toString();36 return Action.SUCCESS;37 }38 39 }
5.在struts.xml中配置action:
1 <struts> 2 <package name="struts2" extends="struts-default,json-default"> 3 <action name="json_*" class="com.xyy.action.JsonAction" method="{1}"> 4 <!-- 返回类型为Json,需要继承json-default,name默认是success --> 5 <result type="json"> 6 7 <!-- root的值对应要返回的值的属性 --> 8 <!-- 这里的result值即是 对应action中的 result --> 9 <param name="root">result</param>10 11 </result>12 </action>13 </package>14 </struts>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。