Struts2与AJAX交互返回JSON数据

首先需要导入六个jar包
Struts2与AJAX交互返回JSON数据_第1张图片
里边有些多余的代码请忽视
这是jsp代码

function queryData(pageNum) {
        $.ajax({
            url:"queryNextPage",
            data:{
                "pageNumber":pageNum
            },
            success:function(data){
                var userData=JSON.parse(data);
                var tableData="姓名年龄";
                $.each(userData,function(index,item){
                    tableData+=""+item.name+""+item.age+"";
                });
                $("#showJsonData").html(tableData);
            },
            error:function(){
                alert("网络错误,请稍后再试");
            }
        });

    }

这是struts.xml代码,extends需要继承struts-default,json-default

<struts>
    <package name="strutsajax" namespace="/" extends="struts-default,json-default">
    <action name="queryNextPage" class="com.action.StrutsAjaxAction" method="returnJson">
    <result type="json">
    <param name="root">jsonStringparam>
    result>
    action>
    <action name="getLastPage" class="com.action.StrutsAjaxAction" method="returnLastPage">
    <result type="json">
    <param name="root">maxPageNumparam>
    result>
    action>
    package>
struts>

这是action代码,jsonString需要有get和set方法,如果getPageData方法返回的list类型的请使用JSONArray,否则请使用JSONObject

private Integer pageNumber;
    private String jsonString;
    private String maxPageNum;
    public String returnJson() {
        JSONArray jsonArray=JSONArray.fromObject(getPageData(this.pageNumber));
        this.jsonString=jsonArray.toString();
        return SUCCESS;
    }
    public String returnLastPage() {
        this.maxPageNum="25";
        return SUCCESS;
    }

你可能感兴趣的:(Struts2与AJAX交互返回JSON数据)