lucky_xingxing 2011-11-19 20:36
浏览 225
已采纳

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条回答

  • jiangguangxian 2011-11-19 20:54
    关注

    [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]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记