一、@responseBody注解的作用
将controller的方法返回的对象通过适当的转换器转换为指定的格式(如.xml、.json、.txt)之后,写入到response对象的body区,通常用来返回XML或JSON数据。
当使用该注解之后,程序不会再走试图处理器,而是将数据直接写入到输出流中,此效果等同于通过response对象输出指定格式的数据。
二、示例代码
@RequestMapping("/login")
@ResponseBody
public User login(User user){
return user;
}
User对象中字段包括:userName, password
那么在前端页面中接收到的数据就为:’{“userName”:“xxx”,“password”:“xxx”}’
此效果等同于如下代码:
@RequestMapping("/login")
public void login(User user, HttpServletResponse response){
response.getWriter.write(JSONObject.fromObject(user).toString());
}