SpringMVC对HTTP报文体的处理
2024-10-22 15:38:38
客户端和服务端HTTP报文传递消息,而HTTP报文包含报文头和报文体。通常,解析请求参数以及返回页面都不需要我们关心HTTP报文体的读取和生成过程。但在某些特定场景下需要直接到请求报文中读取报文体,或者将返回的数据直接写入到报文体中。
在SpringMVC中,可以利用RequestBody注解表示一个参数,说明解析它需要读取报文体,也可以直接将参数类型声明成HttpEntity<T>类型。与处理请求类似,如果想要将对象写入到响应报文的报文体中,则可以返回HttpEntity<T>类型的数据或者在方法上标注ResponseBody。
一个例子:
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
@RequestMapping("/tests")
public class TestController { @RequestMapping("/handle")
public HttpEntity<String> handle() {
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.set("MyResponseHeader", "MyValue");
return new HttpEntity<String>("Hello World", responseHeaders);
} }
这个例子最后可以将你的报文头返回并自定义报文头,这样运用的场景就是你需要某些参数传入header中时,需要这样的写法。
其他有用的注解:
其他有用的注释 使用 @RequestParam 将 URL 参数插入方法中。 使用 @RequestHeader 将某一 HTTP 头插入方法中。 使用 @RequestBody 将 HTTP 请求正文插入方法中。 使用 @ResponseBody 将内容或对象作为 HTTP 响应正文返回。 使用 HttpEntity<T> 将它自动插入方法中,如果将它作为参数提供。 使用 ResponseEntity<T> 返回具有自定义状态或头的 HTTP 响应。
这个是官方的文档:http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/HttpEntity.html
最新文章
- Money, save or spend, this is a problem .
- SQL位移运算函数
- JDBC代码示例
- Xena测试仪的自动化
- Qt之自定义QLineEdit右键菜单
- Nginx简介
- linux C(hello world)三个数最大和三个数最新
- WIN10FTP服务器搭建
- Linux内核启动及根文件系统载入过程
- 打印man手册为pdf文件
- 数据库SQL,NoSQL之小感悟
- Ambari里如何删除某指定的服务(图文详解)
- vue.js中的各种问题记录(包括环境问题和学习笔记)
- 第四节:SignalR灵魂所在Hub模型及再探聊天室样例
- doy09 文件处理,拷贝文件
- react 点击空白处隐藏弹出层
- ​《数据库系统概念》1-数据抽象、模型及SQL
- Tools - 文本编辑器Notepad++
- docker namespaces
- 详解如何使用Docker Hub官方的MySQL镜像生成容器
热门文章
- bjwc Day2 玄学
- BZOJ_4033_[HAOI2015]树上染色_树形DP
- AtCoder Regular Contest 072 E:Alice in linear land
- Nuget:RQCode
- cassandra迁移表数据
- SRAM SROM DRAM DROM DDR NAND FLASH EMMC的区别
- ie8兼容rgba的方法
- Linux安装JDK1.7&;nbsp;prm
- 转:isualvm远程监控Tomcat
- 《精通Spring4.X企业应用开发实战》读后感第三章