<bean id="mappingJacksonHttpMessageConverter"
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
<bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg value="UTF-8" index="0"/>
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
<property name="writeAcceptCharset">
<value>false</value>
</property>
</bean>
// 对AnnotationMethodHandlerAdapter配置没有效果
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="stringHttpMessageConverter" />
<ref bean="mappingJacksonHttpMessageConverter"/><!-- json转换器 -->
</list>
</property>
</bean>
<mvc:annotation-driven>
<!-- 中文乱码 -->
<mvc:message-converters register-defaults="true">
<!-- 自定义的converter必须在这里注册,不然是不会有效的 -->
<bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/>
<ref bean="stringHttpMessageConverter" />
<ref bean="mappingJacksonHttpMessageConverter" />
</mvc:message-converters>
</mvc:annotation-driven>
前三个是在mvc:message-converters
标签注册的,后七个则是默认的(当register-defaults="true"时)

网友评论