struts2 的ajax 请求处理

包含页面发送ajax 请求到action中,以及action 发送json格式数据到页面

页面为

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<script type="text/javascript" src="/bookmanager1.0/js/jquery-3.1.1.js"></script>
<script type="text/javascript">
$(function(){
$(".test").click(function(){
$.get("/bookmanager1.0/login.action",{username:"zhangsan"},function(data){
alert(data);
})
})
})

</script>
</head>
<body>
<button class="test">点击</button>
</body>
</html>


action 的内容为:

package com.lucas.action;


import java.util.ArrayList;
import java.util.List;


import javax.servlet.http.HttpServletRequest;


import org.apache.struts2.interceptor.ServletRequestAware;


import com.opensymphony.xwork2.ActionSupport;


import net.sf.json.JSONArray;


public class AjaxAction extends ActionSupport implements ServletRequestAware{

        private String username;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}


private String jsonResult;


public String getJsonResult() {
return jsonResult;
}



public void setJsonResult(String jsonResult) {
this.jsonResult = jsonResult;
}


@Override
public String execute() throws Exception {
// TODO Auto-generated method stub

                String uu=this.username;
System.out.println(uu);

List<String> s=new ArrayList<String>();
s.add("张三");
s.add("lisi");
s.add("王五");
JSONArray ja=JSONArray.fromObject(s);
jsonResult=ja.toString();

return SUCCESS;
}


@Override
public void setServletRequest(HttpServletRequest arg0) {
// TODO Auto-generated method stub
this.httpServletRequest=arg0;
}
private HttpServletRequest httpServletRequest;

}




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>


    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="true" />


    <package name="default" namespace="/" extends="struts-default,json-default">


        <action name="login" class="com.lucas.action.AjaxAction">
        <result type="json">
        <param name="root">jsonResult</param>
        </result>

        <interceptor-ref name="defaultStack"></interceptor-ref>
        </action>
    </package>
</struts>


以上内容颜色相同的有相关的联系

猜你喜欢

转载自blog.csdn.net/lu__ya/article/details/78943317