赵走x博客
网站访问量:151806
首页
书籍
软件
工具
古诗词
搜索
登录
32、使用MyBatis注解实现数据库操作
31、MyBaties使用XML配置文件实现数据库操作
30、Spring Boot构建MyBatis应用程序
29、MyBatis简介
28、实战:实现JdbcTemplate多数据源
27、使用JdbcTemplate操作数据库
26、JdbcTemplate入门
25、实战:实现Web API版本控制
24、使用Swagger生成Web API文档
23、Thymeleaf页面布局
22、Thymeleaf内置对象、内嵌变量
21、Thymeleaf内联
20、Thymeleaf语法
19、Thymeleaf表达式
18、Thymeleaf入门
17、全局异常处理
16、实战:实现优雅的数据返回
15、跳转指定页面
14、Spring Boot静态资源
13、Spring Boot数据转换配置
12、跨域访问
11、Web配置
10、过滤器
9、拦截器
8、数据验证
7、参数传递
6、URL映射
5、@ResponseBody
4、@RequestMapping
3、@Controller和@RestController
2、Web项目结构
1、spring-boot-starter-web介绍
5、@ResponseBody
资源编号:551763
热度:90
5、@ResponseBody
@ResponseBody注解主要用于定义数据的返回格式,作用在方法上,默认使用Jackson序列化成JSON字符串后返回给客户端,如果是字符串,则直接返回。 在Controller中有时需要返回JSON格式的数据,如果想直接返回数据体而不是视图名,则需要在方法上使用@ResponseBody。使用方式如下: ``` @Controller @RequestMapping("/user") public class UserController { @RequestMapping("/getUser") @ResponseBody public User getUser(){ User u = new User(); u.setName("weiz222"); u.setAge(20); u.setPassword("weiz222"); return u; } } ``` 在上面的示例中,请求/user/getUser时,返回JSON格式的User数据。 这与@RestController的作用类似。需要注意的是,使用@ResponseBody注解时需要注意请求的类型和地址,如果期望返回JSON,但是请求URL以html结尾的页面,就会导致Spring Boot认为请求的是HTML类型的资源,而返回JSON类型的资源,与期望类型不一致,因此报出如下错误: ``` There was an unexpected error (type=Not Acceptable, status=406). Could not find acceptable representation ``` 根据RESTful规范的建议,在Spring Boot应用中,如果期望返回JSON类型的资源,URL请求资源后缀就使用json;如果期望返回视图,URL请求资源后缀就使用html。