@ResponseBody注解的功能大全
下文笔者讲述@ResponseBody注解的功能大全,如下所示
ResponseBody注解功能简介
将Controller方法上的返回值 使用特定的格式写入到response的body处 然后再返回给客户端 注意事项: 1.如果一个方法上没有加入ResponseBody注解,则Spring会将方法的返回值封装为一个ModelAndView对象返回 2.如果一个方法上加入了ResponseBody注解时,当返回值是字符串时,则返回字符串至客户端 如果返回值是一个对象时,则将对象转换为json串,返回到客户端 3.Responsebody返回值的编码需注意, 如: RequestMapping(value="/getUsers",produces="text/html;charset=utf-8")
ResponseBody注解使用场景
1.ResponseBody注解使用在Controller层中的方法上 2.在一个接口方法中,基本上都使用了此方法,如AJAX接口的编写上 当然我们也可以使用符合注解RestMapping
ResponseBody注解实现原理
通过HttpMessageConverter中的方法进行转换 HttpMessageConverter是一个接口 在其实现类完成转换 如果是bean对象,会调用对象的getXXX()方法获取属性值并且以键值对的形式进行封装,转化为json串 如果是map集合,采用get(key)方式获取value值,然后进行封装
ResponseBody注解示例分享
@RequestMapping("/login") @ResponseBody public Object login(String name, String password, HttpSession session) { user = userService.checkLogin(name, password); session.setAttribute("user", user); return user; }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。