ajax访问后台,得到一个对象,我怎么以json格式返回到前台。

ajax访问servlet,查询得到一个message对象,我怎么把这个对象以json的格式返回给前台,并显示在给定的div中。

4个回答

[code="java"]public class JsonServlet extends HttpServlet {

private org.codehaus.jackson.map.ObjectMapper objectMapper = new org.codehaus.jackson.map.ObjectMapper();

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
        throws ServletException, IOException {

    resp.setContentType("application/json");

    try {
        User user = new User();
        user.setId("1");
        user.setName("user");
        objectMapper.writeValue(resp.getOutputStream(), user);
    } catch (Exception e) {
        // TODO: handle exception
    }

}

private static class User {

    private String id;

    private String name;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

}

}[/code]
前台用jquery
[code="js"] $.post("", {}, function(user) {
alert(user.id, +" " + user.name);
}, "json");[/code]

QuanBaosheng
QuanBaosheng 谢谢!setContentType("application/json");
接近 5 年之前 回复

jsonObject 将对象转换成json字符串 ,write出去;
ajax 的回调函数中用eval 将json对象转成js对象

先要对json格式进行了解,自己编程把得到的数据转换成json格式的string,例如:
{"name":"Kobe","age":36,"Job":"player"}
浏览器接收到这个string后,调用一下eval方法,就得到一个json对象了。

你可以把代码粘出来,大家好看看

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