一尘不染

如何从Java Servlet返回JSON对象

java

如何从Java Servlet返回JSON对象。

以前,当使用servlet执行AJAX时,我返回了一个字符串。是否有需要使用的JSON对象类型,或者你只是返回了一个看起来像JSON对象的String,例如

String objectToReturn = "{ key1: 'value1', key2: 'value2' }";

阅读 1442

收藏
2020-03-11

共2个答案

一尘不染

我完全按照你的建议去做(返回a String)。

不过,你可能会考虑将MIME类型设置为指示你正在返回JSON(根据其他stackoverflow文章,其为“ application / json”)。

2020-03-11
一尘不染

首先将JSON对象转换为String。然后将其与application/jsonUTF-8的内容类型和字符编码一起写到响应编写器中。

这是一个示例,假设你正在使用Google Gson将Java对象转换为JSON字符串:

protected void doXxx(HttpServletRequest request, HttpServletResponse response) {
    // ...

    String json = new Gson().toJson(someObject);
    response.setContentType("application/json");
    response.setCharacterEncoding("UTF-8");
    response.getWriter().write(json);
}

就这样。

2020-03-11