方法一:
@RequestMapping(value="/test" , method = RequestMethod.GET)
@ResponseBody //加上这个注解
public String login(String username , HttpServletRequest request , HttpServletResponse response){
response.setCharacterEncoding("UTF-8");
Student stu = new Student();
stu.setId(1);
stu.setAge(18);
stu.setAddress("这是一个JSON测试地址");
stu.setUsername("王二麻子");
return JSONObject.toJSONString(stu);
}
下面是另一种方式输出
@RequestMapping(value="/test" , method = RequestMethod.GET)
public void login(String username , HttpServletRequest request , HttpServletResponse response){
response.setCharacterEncoding("UTF-8");
Student stu = new Student();
stu.setId(1);
stu.setAge(18);
stu.setAddress("这是一个JSON测试地址");
stu.setUsername("王二麻子");
String text = JSONObject.toJSONString(stu);
System.out.println("写完后的json字符串:"+text);
ResponseUtils.renderJson(response, text);
}
/**
* HttpServletResponse帮助类
*/
public class ResponseUtils {
public static void renderJson(HttpServletResponse response, String text) {
render(response, "text/plain;charset=UTF-8", text);
}
/**
* 发送内容。使用UTF-8编码。
*
* @param response
* @param contentType
* @param text
*/
public static void render(HttpServletResponse response, String contentType, String text) {
response.setContentType(contentType);
response.setCharacterEncoding("utf-8");
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
try {
response.getWriter().write(text);
} catch (IOException e) {
}
}
}
返回内容
{"address":"这是一个JSON测试地址","age":18,"id":1,"username":"王二麻子"}