全路径:org.springframework.http.converter.HttpMessageConverter<T>
HttpMessageConverter
接口负责将请求信息转换为一个T
类型的对象,并将T
类型对象绑定到请求方法的参数中或输出为响应信息。
DispatcherServlet
默认已经装配配了RequestMappingHandlerAdapter
作为HandlerAdapter
组件的实现类,即 HttpMessageConvert 由 RequestMappingHandlerAdapter使用,将请求信息转换为对象,或将对象转换为响应信息。
该接口基本上不用额外配置来使用,除非特别情况,SpringMVC 为 Controller 提供了@ResponseBody
和 @RequestBody
注解来响应和接收JSON
格式数据,这是现在通用的方式,无需增加额外配置。下面简单列举下用的比较多的地方:
反回中文字符乱码,在
springmvc.xml
添加支持编码格式的注解驱动。<!-- 注解驱动 --> <mvc:annotation-driven> <!-- HTML 消息转换 utf-8 --> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> </mvc:message-converters> </mvc:annotation-driven>
MappingJackson2HttpMessageConverter
Spring 官方说明,SpringMVC默认使用MappingJackson2HttpMessageConverter
转换JSON
格式的数据。Jackson
开源类包可以很容易地将 Java 对象转换成json
对象和xml
文档;同时可以将json
对象和xml
文档转换成 Java 对象。- 自定义接收Json格式数据的类
使用流行的fastjson
来接收json
数据。
更多内容请访问:IT源点
注意:本文归作者所有,未经作者允许,不得转载