我们经常部署java项目经常会出现乱码。
乱码问题一般分为几种:
1、JSP编码格式设置
2、Tomcat编码格式
3、数据库编码格式
注意:Jsp文件和Java文件本身编码格式只会影响写死的中文,参入参数的中文不会影响
一般来说需要三者编码格式统一才不会出现乱码,本文章专门讲一下tomcat配置避免乱码。
conf/server.xml
以下添加: URIEncoding="UTF-8"
8080端口主要浏览器访问Tomcat服务器的Web应用。
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8081" protocol="HTTP/1.1" redirectPort="8443"/>
如果Tomcat与其他HTTP服务器集成,则需要修改另外一个配置
<Connector URIEncoding="UTF-8" port="8009" protocol="AJP/1.3" redirectPort="8443"/>
修改之后需要重启tomcat
如果修改配置文件依然无法解决问题,可以设置Dfile.encoding来解决tomcat解析文件编码格式问题
tomcat下的bin下的catalina.bat的配置,在最前面添加 set JAVA_OPTS=-Dfile.encoding=UTF-8
或
修改tomcat下bin/catalina.sh,JAVA_OPTS后面加入参数-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8