springMVC中文乱码问题

时间:2021-03-06 20:08:33

最近使用springMVC过程中发现有中文乱码问题,post还比较容易解决,spring提供了  Flter 拦截器(一劳永逸的方式),主要还是get请求。

避免以后再遇到这种问题或者忘记了现记录下来。

1.首先说下post请求中文乱码处理方式:需要在web.xml文件中配置一下代码

<!-- 字符编码拦截器  注意:get请求无效-->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceRequestEncoding</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>forceResponseEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<!-- 需要拦截什么路径 -->
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

2.普通get请求的处理方式(有多重解决方法)

先说说最简单的  Tomcat8.0中已经解决中文乱码问题,所以不需要我们去改变任何代码。如果项目中可以使用Tomcat8.0 建议使用Tomcat8.0,这样能节省很多麻烦。

如果是 Tomcat7.0 就需要修改编码:

目前中文乱码的解决方式有很多种,相信度娘上都可以找得到。

3.ajax  GET请求中文乱码问题:

 

@RequestMapping(value = "/configrole", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")