SpringMVC返回字符串对象出现中文乱码
SpringMVC返回字符串对象出现中文乱码
1.问题表述
使用@ResponseBody来返回JSON字符串对象的时候,页面接收到的对象出现中文乱码
@RequestMapping(value = "/demo")
@ResponseBody
public String demo() {
return "测试";
}
2.原因
这是因为SpringMVC默认的处理字符集是ISO-859-1,此格式无法表示中文字符。
3.解决方法
StringHttpMessageConverter向浏览器返回字符串对象时添加Content-Type的响应头。
也就是指定@RequestMapping注解的produces属性,它的作用是指定返回值类型。
@RequestMapping(value = "/demo",produces = "application/json;charset=utf-8")
@ResponseBody
public String demo() {
return "测试";
}