springmvc使用@responsebody返回字符串乱码问题

SpringMVC的@ResponseBody注解可以将请求方法返回的对象直接转换成JSON对象,但是当返回值是String的时候,中文会乱码。

原因是因为其中字符串转换和对象转换用的是两个转换器,而String的转换器中固定了转换编码为"ISO-8859-1"。

解决:

方法1.加上这个@RequestMapping(value="/login.action",method=RequestMethod.POST,produces={"application/json;charset=utf-8"})

 

方法2.return new String(str.getBytes(), "ISO-8859-1");  

 

posted @ 2016-05-05 16:15  长不高  阅读(212)  评论(0编辑  收藏  举报