tomcat控制台中文信息显示乱码

问题现象

我的tomcat版本是10.1版本。
在cmd下启动tomcat,会新打开控制台输出窗口:
tomcat控制台中文信息显示乱码_第1张图片

控制台窗口输出的中文信息是乱码:
tomcat控制台中文信息显示乱码_第2张图片

问题原因

产生这个问题的原因是:控制台窗口的编码和输出到控制台窗口的日志信息编码不一致。

查看tomcat控制台窗口的编码

tomcat控制台中文信息显示乱码_第3张图片

tomcat控制台中文信息显示乱码_第4张图片

可以看到,tomcat控制台窗口当前的代码页是936,也就是GBK。

查看tomcat输出日志信息到控制台的编码

打开tomcat安装目录下conf子目录下的logging.properties文件:
tomcat控制台中文信息显示乱码_第5张图片
tomcat控制台中文信息显示乱码_第6张图片
用线框出来的三行控制输出到控制台的日志信息的,编码用了UTF-8

解决方法

打开tomcat安装目录下conf子目录下的logging.properties文件,将输出到控制台的日志编码改为GBK,使得跟控制台窗口的编码一致就行了:
tomcat控制台中文信息显示乱码_第7张图片

现在重新启动tomcat:
tomcat控制台中文信息显示乱码_第8张图片

控制台的中文信息显示正常了:
tomcat控制台中文信息显示乱码_第9张图片

备注

我也尝试过在cmd窗口,先用命令chcp 65001将窗口的代码页改为65001,也就是UTF-8,结果是cmd窗口是修改过来了,但这个修改无法带给新打开的tomcat控制台窗口,tomcat控制台窗口的代码页仍然是936。

你可能感兴趣的:(tomcat,java)