spring MappingJackson2HttpMessageConverter GBK 乱码问题

spring MappingJackson2HttpMessageConverter 乱码问题说明:spring

 application/json ;charset=GBK 指定MediaType(坑)json

坑:跟踪代码发现,Spring使用的Jackson jar 包支持编码格式只有UTF-8,UTF-16,UTF-32,当指定的编码格式匹配不到时默认使用UTF-8,此处GBK不会生效。app

Spring使用默认的UTF-8编码,但因为mediaType使用指定application/json ;charset=GBK客户端解码根据回复消息包头里指定的GBK进行解码,那么必定会是乱码。编码

结论:MappingJackson2HttpMessageConverter 没法返回GBK编码orm

 

 

 

 Spring默认配置状况下,按顺序加载如下转换器(具体含义见spring文档HTTP Message Conversion 章节)文档

StringHttpMessageConverterio

FormHttpMessageConverter乱码

ByteArrayHttpMessageConverter配置

MarshallingHttpMessageConverter客户端

MappingJackson2HttpMessageConverter

SourceHttpMessageConverter

BufferedImageHttpMessageConverter

相关文章
相关标签/搜索