Tomcat配置编码集

设置系统默认文件编码

file.encoding跟操作系统默认字符集有关,Windows下默认的是gbk,但我们程序一般IO流中字符编码一般都设置的是utf-8,这样会导致中文乱码。因此需要修改file.encoding为utf-8。

windows

修改catalina.bat

tomcat7以下:

set JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%的后面加上 -Dfile.encoding="UTF-8"

tomcat7:

set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -Dfile.encoding=UTF-8"

Linux

修改catalina.sh

JAVA_OPTS="-Dfile.encoding=UTF-8"

设置tomcat编码方式

默认情况下,tomcat使用的的编码方式:iso8859-1,修改tomcat下的conf/server.xml文件,找到如下代码:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

这段代码规定了Tomcat监听HTTP请求的端口号等信息。
可以在这里添加一个属性:URIEncoding,将该属性值设置为UTF-8,即可让Tomcat(默认ISO-8859-1编码)以UTF-8的编码处理get请求。
修改完成后:

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