今天搭建項目時,使用SpringMVC從頁面傳參到後臺,獲取到的中文參數亂碼。
解決方法:
1、檢查所有頁面編碼是UTF-8格式。
2、查看是否在web.xml文件中配置編碼過濾器,配置如下:
<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>
3、如果還是亂碼,打開tomcat配置文件server.xml,在如下配置中添加URIEncoding="UTF-8"。
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
修改完後,項目要重新加載tomcat。