解决SpringMVC的@ResponseBody返回中文乱码

简介:

SpringMVC的@ResponseBody返回中文乱码的原因是SpringMVC默认处理的字符集是ISO-8859-1,在Spring的org.springframework.http.converter.StringHttpMessageConverter类中可以看到如下代码:

public static final Charset DEFAULT_CHARSET = Charset.forName("ISO-8859-1");

解决返回中文乱码的问题有两种,第一种是局部的,只针对于某个方法的返回进行处理,第二种是全局的,针对于整个项目,如下:

第一种:在@RequestMapping中添加produces="text/html;charset=UTF-8,如:

@RequestMapping(value="/login.do",method=RequestMethod.POST,produces="text/html;charset=UTF-8")
  @ResponseBody
 public String login(@RequestParam(value="username") String userName,@RequestParam(value="password") String password){   return JSONMessageUtil.getSuccessJSON("登录成功");  }

第二种:在配置文件中的mvc:annotation-driven中添加如下代码:

<mvc:annotation-driven >
    <!-- 消息转换器 -->
  <mvc:message-converters register-defaults="true">    <bean class="org.springframework.http.converter.StringHttpMessageConverter">     <property name="supportedMediaTypes" value="text/html;charset=UTF-8"/>    </bean>   </mvc:message-converters>  </mvc:annotation-driven>  <mvc:resources location="/resources/" mapping="/resources/**" />

对于乱码问题,这样就可以正常显示中文了



本文转自 netcorner 博客园博客,原文链接:http://www.cnblogs.com/netcorner/p/4392693.html   ,如需转载请自行联系原作者

相关文章
|
JSON 前端开发 Java
SpringMVC中@RequestBody和@ResponseBody两个注解的区别
📒 程序员小王的博客:程序员小王的博客 🎉 欢迎点赞 👍 收藏 ⭐留言 📝 😊 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习路线:java自学的学习路线 今天我想详细的了解一下Spring MVC中@RequestBody和@ResponseBody的区别,让我自己在开发中更好的使用这两个注解
205 0
SpringMVC中@RequestBody和@ResponseBody两个注解的区别
|
XML JSON 前端开发
Spring MVC @RequestBody @ResponseBody 序列化反序列化实现
前言 Spring MVC 中,标注了 @RequestBody 注解的 Controller 方法参数可以用来接收请求体,标注了 @ResponseBody 注解的 Controller 方法则会将返回值作为响应体。
549 0
Spring MVC @RequestBody @ResponseBody 序列化反序列化实现
|
JSON 前端开发 Java
解决SpringMVC下使用@ResponseBody的中文乱码
解决SpringMVC下使用@ResponseBody的中文乱码
142 0
|
JSON 前端开发 Java
SpringMVC 使用@ResponseBody返回json 中文乱码
SpringMVC 使用@ResponseBody返回json 中文乱码
236 0
SpringMVC 使用@ResponseBody返回json 中文乱码
|
XML JSON 数据格式
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(二)
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(二)
166 0
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(二)
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(一)
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(一)
104 0
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(一)
|
XML JSON 前端开发
springMvc注解之@ResponseBody和@RequestBody详解
springMvc注解之@ResponseBody和@RequestBody详解
208 0
springMvc注解之@ResponseBody和@RequestBody详解
|
XML JSON Java
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(三)
SpringMVC - @RequestMapping、@ResponseBody、@RequestBody、@RequestParam、@PathVariable(三)
131 0
|
JSON 前端开发 Java
Spring MVC常用注解--“姐妹花”@RequestBody和@ResponseBody
在这篇短文中,我们简要地介绍了Spring MVC中常用的注解 @RequestBody和@ResponseBody。
2589 0
|
JavaScript 前端开发 Java
spring mvc 4+ @ResponseBody 中文乱码
(1)加上produces = {"application/json;charset=UTF-8"}     @RequestMapping(value="/birthday.chtm",produces = {"application/json;charset=UTF-8"}) (2)在spring-mvc.xml中配置     注意 4+版本的spring-mvc要使用 ht
1948 0

热门文章

最新文章