JsonGenerator 生成 JSON
@RequestMapping(value = "/json.sir")
public void returnJson(HttpServletRequest request,HttpServletResponse response) throws IOException {
String username = request.getParameter("username");
String userpass = request.getParameter("userpass");
Writer out =response.getWriter();
ObjectMapper objectMapper = new ObjectMapper();
JsonGenerator jsonGenerator = objectMapper.getJsonFactory().createJsonGenerator(out);
jsonGenerator.writeStartObject();
jsonGenerator.writeBooleanField("success", true);
jsonGenerator.writeStringField("username", username);
jsonGenerator.writeStringField("userpass", userpass);
jsonGenerator.writeEndObject();
jsonGenerator.flush();
// jsonGenerator.writeStartObject();
// jsonGenerator.writeFieldName("callback");
// jsonGenerator.writeStartArray();
// jsonGenerator.writeStartObject();
// jsonGenerator.writeBooleanField("success", true);
// jsonGenerator.writeStringField("username", username);
// jsonGenerator.writeStringField("userpass", userpass);
// jsonGenerator.writeEndObject();
// jsonGenerator.writeEndArray();
// jsonGenerator.writeEndObject();
}
JsonGenerator 生成 JSONP
@RequestMapping(value = "jsonp.sir")
public void returnJsonp(HttpServletRequest request,HttpServletResponse response) throws IOException {
String username = request.getParameter("username");
String userpass = request.getParameter("userpass");
String callback = request.getParameter("callback");
Writer sw = new StringWriter();
ObjectMapper objectMapper = new ObjectMapper();
JsonGenerator jsonGenerator = objectMapper.getJsonFactory().createJsonGenerator(sw);
sw.write(callback + "(");
jsonGenerator.writeStartObject();
jsonGenerator.writeBooleanField("success", true);
jsonGenerator.writeStringField("username", username);
jsonGenerator.writeStringField("userpass", userpass);
jsonGenerator.writeEndObject();
jsonGenerator.flush();
sw.write(")");
sw.close();
Writer out =response.getWriter();
out.write(sw.toString());
}