如何从Java Servlet返回JSON对象如何从Java servlet返回JSON对象。以前在使用servlet执行AJAX时,我返回了一个字符串。是否有需要使用的JSON对象类型,或者只是返回一个看起来像JSON对象的String,例如String objectToReturn = "{ key1: 'value1', key2: 'value2' }";
3 回答
阿波罗的战车
TA贡献1862条经验 获得超6个赞
我完全按照你的建议(返回a String
)。
您可以考虑设置MIME类型以指示您正在返回JSON(根据此其他stackoverflow发布它的“application / json”)。
Smart猫小萌
TA贡献1911条经验 获得超7个赞
将JSON对象写入响应对象的输出流。
您还应该按如下方式设置内容类型,该类型将指定您要返回的内容:
response.setContentType("application/json");
// Get the printwriter object from response to write the required json object to the output stream
PrintWriter out = response.getWriter();
// Assuming your json object is **jsonObject**, perform the following, it will return your json object
out.print(jsonObject);
out.flush();
喵喔喔
TA贡献1735条经验 获得超5个赞
首先将JSON对象转换为String
。然后将其写入响应编写器以及application/json
UTF-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);}
就这样。
添加回答
举报
0/150
提交
取消