码迷,mamicode.com
首页 > 其他好文 > 详细

tomcat环境中文字符集乱码

时间:2018-05-16 15:33:25      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:tomcat中文字符集乱码

一般在apache官方网站下载的,默认情况下不会出现字符集编码是乱码的情况,出现这种情况的原因有两种:一种是检查环境,一种是代码编码问题。可以从这两面排查。
开发打字符集,查看编码问题,同时运维排查从前端到后端所有的字符集情况。
开发检查开发环境编码的配置,检查读取配置文件的程序,运维检查系统及tomcat及mysql等的字符集。
有时候是开发问题,有时候是环境问题,需要开发配合一点点排查。
最近笔者遇到了非uri乱码,而是页面中部分中文乱码问题。
在这里非常感谢我们开发的配合帮助排查
tomcat启动时,需要指定虚拟机文件编码一定要和系统环境保持一致,否则会出乱码问题
作如下设置:-Dfile.encoding=UTF-8,更改tomcat启动脚本catalina.sh,加入如下内容
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=utf-8 -server -Xms1024m -Xmx1536m -XX:PermSize=256m -XX:MaxPermSize=512m "
官方中给出的解释是默认字符集是在java虚拟机启动时决定的,这个依赖于java虚拟机所在的操作系统的区域及字符集。代码中可以看到,默认字符集就是从file.encoding这个属性中获取的。
对 -Dfile.encoding=UTF-8 来说就是设置系统属性 file.encoding 为 UTF-8 ,即jvm虚拟机中的系统属性更改为UTF-8.
如果是url乱码:
设置tomcat的配置文件server.xml

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

参考文章:
https://blog.csdn.net/telnetor/article/details/5555361

tomcat环境中文字符集乱码

标签:tomcat中文字符集乱码

原文地址:http://blog.51cto.com/laodou/2116914

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!