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

Java项目彻底解决中文乱码问题

2018-03-10 16:29 357 查看
spring自带的编码过滤器,在web.xml中配置,如下



spring org.springframework.web.filter下的CharacterEncodingFilter.java编码过滤器源码:



发现其源码相当于servlet里的
request.setCharacterEncoding("UTF-8")
respsose.setCharacterEncoding("UTF-8")
因此spring的自带的过滤器只是针对于post请求的,get请求还是无法过滤为中文编码.
解决get乱码方法一般是数据还原:



但是这种方法必须每个get请求都需要取修改,不方便,因为tomcat默认编码是'iso8859-1',因此我们可以修改tomcat的配置文件更改tomcat的字符编码修改
二. Tomcat字符编码修改
    发开conf下面的server.xml,修改代码

[html] view plain copy <Connector port="8080" protocol="HTTP/1.1"  
               connectionTimeout="20000"  
               redirectPort="8443" />  
修改之后,代码如下:
[html] view plain copy <Connector port="8080" protocol="HTTP/1.1"  
               connectionTimeout="20000"  
               redirectPort="8443"   
               URIEncoding="UTF-8"  
               useBodyEncodingForURI="true"  
               />  
这样tomcat对于get请求默认编码就变成了Utf-8了.
总结:这样就能彻底解决项目中的中文乱码问题了,对于Get请求的中文参数,不能在后台进行数据还原,数据会乱码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: