a308812025
2012-03-14 10:43 阅读 216

servlet 中 JSON 对象不能传递到前台

[code="java"]
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Map map = new HashMap();
ArrayList> list = new ArrayList>();
for(int i=0;i HashMap jsonMap = new HashMap();
jsonMap.put("id", i);
jsonMap.put("username", "王三");
jsonMap.put("password", "123");
jsonMap.put("age", 20+i);
list.add(jsonMap);
}
map.put("aa", list);
System.out.println(map);
JSONObject.fromObject(map);
PrintWriter out = response.getWriter();
out.print(map);
out.flush();
out.close();
}
[/code]
[code="html"]
$(document).ready(function(){
$.ajax({
url:'/JGrid/servlet/JGridServlet',
type:'post',
dataType:'json',
success:function(data){
alert('成功!');
alert(data);
},
error:function(){
alert('内部错误!');
}
});
});
[/code]
[quote]
[b]后台输出时JSON 格式的数据[/b]
[/quote]
[quote]
{aa=[{password=123, age=20, username=王三, id=0}, {password=123, age=21, username=王三, id=1}, {password=123, age=22, username=王三, id=2}]}
[/quote]

[quote]前台走的是Ajax中的error:function(){alert('内部错误!')},我估计着是后台servlet中的数据传输有问题,JSON 格式不对?但是我明明得到了数据也做了转化啊[/quote]

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    douliw 王启军 2012-03-14 11:01

    String json="{\"status\":0,\"data\":0}";
    json的个格式应该是这样的

    点赞 评论 复制链接分享
  • douliw 王启军 2012-03-14 10:47

    ajax 改成text试试

    点赞 评论 复制链接分享
  • douliw 王启军 2012-03-14 10:58

    out.print(map);

    打印的是map

    点赞 评论 复制链接分享

相关推荐