文章目录
- HttpMessageConverter
-
- 一、概念
- 二、@RequestBody
- 三、RequestEntity
- [四、 @ResponseBody](#四、 @ResponseBody)
- 五、@RestController
- 六、ResponseEntity
HttpMessageConverter
一、概念
报文信息转化器,将请求报文转化为Java对象,或将Java对象转化为响应报文
二、@RequestBody
接收请求体的内容
html
<form th:action="@{/requestBody}" method="post">
用户名<input name="username" type="text"><br>
密码<input type="password" name="password"> <br>
<input type="submit" value="RequestBody">
</form>
java
@RequestMapping("/requestBody")
public String testrequestBody(@RequestBody String requestBody)
{
System.out.println(requestBody);
return "target";
}
三、RequestEntity
html
<form th:action="@{/requestEntity}" method="post">
用户名<input name="username" type="text"><br>
密码<input type="password" name="password"> <br>
<input type="submit" value="RequestBody">
</form>
java
@RequestMapping("/requestEntity")
public String testrequestEntity(RequestEntity<String> requestBody)
{
System.out.println(requestBody.getHeaders()); //获取请求头
System.out.println(requestBody.getBody()); //获取请求体
return "target";
}
四、 @ResponseBody
@ResponseBody 标识到一个控制类的方法上,可以将该方法的返回值直接作为响应报文的响应体响应到浏览器
java
@ResponseBody
@RequestMapping("/responseBody")
public String testRequestBody()
{
return "target"; //把target直接输入到页面上
}
1.返回JSON格式的字符串
1.pom.xml添加依赖
xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.15.0</version>
</dependency>
2.在SpringMVC配置文件中,开启注解驱动
xml
<mvc:annotation-driven/>
3.在控制器方法上加上@ResponseBody
java
@ResponseBody
@RequestMapping("/responseBody1")
public User testRequestUser()
{
return new User(12,"cc","1234","男","cc.qq.com");
}
4.浏览器效果
五、@RestController
@RestController注解是springMVC提供的一个复合注解,标识在控制器的类上,就相当于为类添加了@Controler注解,并且为其中的每个方法添加了@ResponseBody注解
六、ResponseEntity
ResponseEntity用于控制器方法的返回值类型,该控制器方法的返回值就是响应到浏览器的响应报文
用于实现文件的下载