ajax通过java Servlet返回的数据问题
  就是  ajax  提交服务器的请求  然后 服务器返回的数据 用 json 嘛   就是 通过JSONArray  把List或者javabean转成 json格式,在 通过   PrintWrite输出嘛,  如果我要输出的是两个不同的对象,一个是List集合转换过来的,另外一个还要输出一个javabean,用于分页的,但是这些输出后最后在ajax那里 var data = xmlRequest.responseText  它就全部组合成一个字符串了,怎么给它分开呢。我是在做一个书籍的留言评论,然后 我的要求是  留言翻页的时候我通过ajax来提交的,去数据库查到数据List集合后通过JSONArray专JSON格式,但是我还在界面显示还需要一个分页的 javabean需要传到页面上去,请问我用ajax这个时候该怎么提取数据?还在在servlet上该如何发送数据。因为一个是 发送list转成的json  另外一个是 分页javabean转成的json.............求各位大神讲解

4个回答

[code="java"]

public class DataModel{
public String id = null;
public String name = null;
public String content = null;
}

public class PageBean {
public int rownumber = 0;
public int pagecount = 0;
public int pageindex = 0;
}

/**
*如你既要List又要 PageBean 那么你得这么返回

  • 定义一个新类
    */

    public class JsonBean {
    public List datas;
    public PageBean page;
    }

    //生成的json传格式是
    {
    page:{
    rownumber:1,
    pagecount:1,
    pageindex:1
    },
    datas:[
    {id:"",name:"",content:""},
    {id:"",name:"",content:""},
    {id:"",name:"",content:""}
    ]
    }

    //然后在前台,你使用

    var strData = xmlRequest.responseText;
    if(typeof strData !== "object")
    strData = eval('('+strData+')');

//然后,数据信息通过
var dataArray = strData.datas;
//分页信息对象
var pageObj = strData.page;
//想要获取page中的值
var pageindex = pageObj.pageindex;
//....其他的就不多描述

[/code]

能不能把javabean也直接放到JSON对象里,然后ajax获取之后,顺便用js更新下分页的页码之类的,这种思路成不

[code="java"]JSONObject jsonObject = new JSONObject();
jsonObject.element("list", list);
JSONObject beanObject = (JSONObject) JSONSerializer.toJSON(javabean);
jsonObject.element("javaBean", beanObject);[/code]

使用jsonobject转

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问