spring mvc 3.0中打散 <mvc:annotation-config/> 实现定制的配置.
项目开始的时候图简单, 用的spring mvc的 mvc 命名空间, 只用一个
<mvc:annotation-config/> 就实现 了spring mvc 的大部分配置, 后来发现在json操作的时候, 如果返回类型为String, 则会出现乱码, 经过笔者查看源码, 发现这时候并不是jacksonMapperConverter在工作, 而是直接被 org.springframework.http.converter.StringHttpMessageConverter处理掉了.
好在这个类是支持定制字符集的.
经过笔者的返复尝试, 才把这个问题搞定.
具体配置是这样的.
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" p:order="1"/> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <bean class="org.springframework.http.MediaType"> <constructor-arg value="text"/> <constructor-arg value="plain"/> <constructor-arg value="utf8"/> </bean> </list> </property> </bean> <!-- <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/> --> <bean class="com.fpi.mespvc.web.util.NoCacheMappingJacksonHttpMessageConverter"/> </list> </property> </bean>