您的位置:首页 > 编程语言 > Java开发

spring mvc乱码的解决方案

2015-07-09 16:22 716 查看
今天用springMVC接收表单中文数据时总量乱码,按照网上的解决方案设置过滤器后,post的表单不乱码了,但get的表单还是会乱码。

解决get方法乱码的方案是修改tomcat的server.xml配置文件,修改<connector>如下,加入字符集编码:

 

Xml代码  



<Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>  

 

 

过滤器的代码如下:

 

Xml代码  



<!-- Character Encoding filter -->  

    <filter>  

        <filter-name>encodingFilter</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>forceEncoding</param-name>  

            <param-value>true</param-value>  

        </init-param>  

    </filter>  

  

    <filter-mapping>  

        <filter-name>encodingFilter</filter-name>  

        <url-pattern>/*</url-pattern>  

    </filter-mapping>  

 
以上这样可以解决几乎所有的总量(注意是“几乎”),一些get方法还是没办法解决,如

 

Html代码  



<a href="test.jsp?key=中文" />  

  这里有个更好的解决办法就是配置tomcat的server.xml文件

 

Xml代码  



<Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443"  useBodyEncodingForURI="true"/>  

今天用springMVC接收表单中文数据时总量乱码,按照网上的解决方案设置过滤器后,post的表单不乱码了,但get的表单还是会乱码。

解决get方法乱码的方案是修改tomcat的server.xml配置文件,修改<connector>如下,加入字符集编码:

 

Xml代码  



<Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>  

 

 

过滤器的代码如下:

 

Xml代码  



<!-- Character Encoding filter -->  

    <filter>  

        <filter-name>encodingFilter</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>forceEncoding</param-name>  

            <param-value>true</param-value>  

        </init-param>  

    </filter>  

  

    <filter-mapping>  

        <filter-name>encodingFilter</filter-name>  

        <url-pattern>/*</url-pattern>  

    </filter-mapping>  

 
以上这样可以解决几乎所有的总量(注意是“几乎”),一些get方法还是没办法解决,如

 

Html代码  



<a href="test.jsp?key=中文" />  

  这里有个更好的解决办法就是配置tomcat的server.xml文件

 

Xml代码  



<Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443"  useBodyEncodingForURI="true"/>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: