文章目录
在整个数据流转过程中,前端的请求报文转化为Java对象,Java对象转化为响应报文,这里就用到了HttpMessageConverter(消息转换器)。
消息转化器的作用
- 将请求报文转化为Java对象
- 将Java对象转化为响应报文
消息转化器的主要方法
- getSupportedMediaTypes:获取支持的MediaType集合(如:text/html,text/plain,application/json)
- canRead:判断是否能读(请求)
- read:将请求数据进行格式转换(canRead方法返回值为true时调用)
- canWrite:判断是否能写(响应)
- write:将响应数据进行格式转换(canWrite方法返回值为true时调用)
默认配置的消息转化器
SpringMVC启动时会自动配置一些HttpMessageConverter(WebMvcConfigurationSupport类的addDefaultHttpMessageConverters)方法
源码如下:
protected final void addDefaultHttpMessageConverters(List<HttpMessageConverter<?>> messageConverters) {
messageConverters.add(new ByteArrayHttpMessageConverter());
messageConverters.add(new StringHttpMessageConverter());
messageConverters.add(new ResourceHttpMessageConverter());
messageConverters.add(new ResourceRegionHttpMessageConverter());
try {
messageConverters.add(new

本文详细介绍了Spring MVC中的HttpMessageConverter(消息转化器)的角色,包括其将请求报文转化为Java对象以及将Java对象转化为响应报文的功能。文章还列举了默认配置的各种消息转化器,如JSON、XML、表单数据等,并强调了自定义消息转换器的注意事项,如需置于默认转换器之前。此外,提到了配置自定义转换器时需注意的WebMvcConfigurer方法选择,以确保默认转换器的生效情况。
最低0.47元/天 解锁文章
8472

被折叠的 条评论
为什么被折叠?



