SpringMVC 中 HttpMessageConverter<T>

来源:互联网 发布:阿里云9月推荐码 编辑:程序博客网 时间:2024/04/28 18:47

HttpMessageConverter负责将请求信息转换为一个对象(类型为T),将对象(类型为T)输出为响应信息。

这里写图片描述

下面我们说一下如何使用。

使用HttpMessageConverter将请求信息转化并绑定到处理方法的入参中或将响应结果转为对应类型的响应信息,SpringMVC提供了两种途径:

  • 使用@RequestBody或@ResponseBody对处理方法进行标注
  • 使用HttpEntity< T >或 ResponseEntity< T >作为处理方法的入参或返回值

说明:不需要成对的出现。

当控制器处理方法使用到@RequestBody或@ResponseBody或HttpEntity< T >或ResponseEntity< T >时,SpringMVC首先根据请求头或者响应头的Accept属性选择匹配的HttpMessageConverter,进而根据参数类型或泛型类型的过滤得到匹配的HttpMessageConverter,若找不到可用的HttpMessageConverter将报错。

我们看看实例。

这里写图片描述

前台index.jsp加一句就行

<a href="testResponseEntity">Test ResponseEntity </a>

这里写图片描述

就会把文件下载下来。

1 0