vlambda博客
学习文章列表

解决tomcat启动时的中文乱码问题

问题:

先来看看问题(图示),在tomcat的启动窗口打印的启动信息中包含了大量的中文乱码,虽然这些对tomcat本身的使用没有任何影响,但却非常碍眼,影响视觉效果!

那就要修复这个问题,对于乱码问题,本质原因就一个:字节流解码为字符串时,使用了错误的字符集(和编码所用字符集不一致)!

解决办法

1.我们来到tomcat目录的conf子目录中,找到一个名为 "logging.properties" 的文件,打开这个文本文件,找到如下配置项:java.util.logging.ConsoleHandler.encoding = UTF-8

解决tomcat启动时的中文乱码问题


2.使用notepad++编辑工具打开后将java.util.logging.ConsoleHandler.encoding = UTF-8中的UTF-8修改成GBK,修改后的效果为:

java.util.logging.ConsoleHandler.encoding = GBK

3.重启Tomcat

修改保存后,进入bin目录找到startup.bat文件并双击运行即可重启

原因总结:

因为windows系统中,其命令行窗口在解码字节数组时,默认使用本地字符集(对于我们就是GBK),而tomcat默认输出的启动信息是通过utf8进行编码的,这就导致编码与解码所使用字符集的不一致,从而出现了乱码情况!