首页 > 代码库 > SpringMvc参数传递中乱码问题

SpringMvc参数传递中乱码问题

问题描述:

当传递中文参数到controller类时,无乱是get方式还是post方式都出现乱码

解决:

1、保证所有的页面编码都是utf-8,包括jsp页面,浏览器编码设置和eclipse的编码设置。

2、spingmvc给我们提高了一个编码过滤器,只需要在配置文件web.xml中加入即可。如下:

技术分享
 1 <filter>
 2       <filter-name>characterEncoding</filter-name>
 3       <filter-class>org.springframework.web.filter.CharacterEncodingFilter </filter-class>
 4       <init-param>
 5           <param-name>encoding</param-name>
 6           <param-value>UTF-8</param-value>
 7       </init-param>
 8   </filter>
 9   <filter-mapping>
10       <filter-name>characterEncoding</filter-name>
11       <url-pattern>/*</url-pattern>
12   </filter-mapping>
View Code

3、以上两步有时只能解决post方式传递参数乱码问题,get方式还是出现乱码,则就需要该tomcat的配置文件了,打开tomcat的server.xml文件,找到以下行

技术分享
1 <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
View Code

在上面行中插入URIEncoding="UTF-8",改成如下形式:

技术分享
1 <Connector URIEncoding="UTF-8"  connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
View Code

这样就解决了springmvc中文参数传递乱码问题了。

 

SpringMvc参数传递中乱码问题