关于java 中文乱码问题 自己的一点解决方案

时间:2023-01-13 16:58:00

早上做导出的时候,url拼接参数中文出现了乱码。查了半天。终于中午搞定了。

在web.xml中加了转码过滤器,tomcat的server.xml中也加入URIEncoding="UTF-8" 这个了。

但是还不行。为啥?

我的理解中一个请求有:请求体和请求参数

过滤器设置请求体的编码为utf-8,URIEncoding="UTF-8"这个设置tomcat默认解码为UTF-8。

但是如果我在tomcat中配置了https加密请求的话,就是这样:

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

那么我必须在https的那个里面也加上URIEncoding="UTF-8",

<Connector SSLEnabled="true" URIEncoding="UTF-8" clientAuth="false" keystoreFile="d:/gcfwpt.jks" keystorePass="111111" maxThreads="150" port="443" protocol="org.apache.coyote.http11.Http11Protocol" scheme="https" secure="true" sslProtocol="TLS"/>

写给自己看的。别忘了。