方法1:
这种方法,估计很多人都知道,那就在 controller 中的每个方法的 @RequestMappering 注解中进行编码设置,如下所示:
@RequestMapping(value = "/queryUserById",produces = "text/plain;charset=utf-8")
这种方法可以解决返回乱码问题,但是存在一个问题就是:需要在每一个的方法中都要写上 produces = “text/plain;charset=utf-8”
方法2:
这种方法只需要在 spring-mvc.xml 配置文件中配置一次就好,省去了我们重复写的麻烦,配置内容如下:
<mvc:annotation-driven >
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter" >
<property name = "supportedMediaTypes">
<list>
<value>application/json;charset=utf-8</value>
<value>text/html;charset=utf-8</value>
<!-- application 可以在任意 form 表单里面 enctype 属性默认找到 -->
<value>application/x-www-form-urlencoded</value>
</list>
</property>
</bean>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" ></bean>
</mvc:message-converters>
</mvc:annotation-driven>