HttpMessageConverter,报文信息转换器,将请求报文转换为Java对象,或将Java对象转换为响应报文
提供了两个注解和两个类型:@RequestBody,@ResponseBody,RequestEntity,
ResponseEntity
使用@RequestBody,可以获取请求体信息
注意由于默认的get请求是不含请求体的,所以使用@Requestbody注解要避免和GET请求一起(但并不是不能一起使用,现在也可以在GET请求中放入请求体,也可以使用@Requestbody注解)

最后输出的就是post请求请求体内的内容,后续这个注解常用于处理前端发来的json数据
封装请求报文的一种类型,需要在控制器方法的形参中设置该类型的形参,当前请求的请求报文就会赋值给该形参,可以通过getHeaders()获取请求头信息,通过getBody()获取请求体信息


@ResponseBody用于标识一个控制器方法,可以将该方法的返回值直接作为响应报文的响应体响应到浏览器
一般标记在方法上,或者类上,使返回数据避过视图解析器,直接向客户端相应信息,但并不是返回json数据,想要返回json数据还需要配置
如下
导入配置
- <dependency>
- <groupId>com.fasterxml.jackson.coregroupId>
- <artifactId>jackson-databindartifactId>
- <version>2.12.1version>
- dependency>
然后需要开启注解驱动
<mvc:annotation-driven />
注意单单这样配置会出现中文乱码,需要添加中文编码响应

成功响应json数据
用于控制器方法的返回值类型,该控制器方法的返回值就是响应到浏览器的响应报文(不常用)

是springMVC提供的一个复合注解,标识在控制器的类上,就相当于为类添加了@Controller注解,并且为其中的每个方法添加了@ResponseBody注解
个人理解,如果有错误欢迎大家指正