方法一: 注释中添加
当我们使用@ResponseBody注解,让方法直接返回字符串时,这个时候在浏览器上直接访问会发现出现乱码,比如下边的例子。
@ResponseBody
@RequestMapping(value = "/C")
public String C() throws IOException {
return "哈哈哈";
}
浏览器访问
解决方案
在@RequestMapping注解中,指定produces 的值为 “text/html;charset=utf-8”
@ResponseBody
@RequestMapping(value = "/C", produces = "text/html;charset=utf-8")
public String C() throws IOException {
return "哈哈哈";
}
浏览器访问
方法二:springMVC配置文件中添加
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg value="UTF-8"/>
</bean>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
<property name="failOnEmptyBeans" value="false"/>
</bean>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>