解决方案就是把所有相关的地方编码方式都设为utf-8
- Windows命令行
参考我这篇博文链接 - Tomcat日志配置
在tomcat主目录下找到/conf/logging.properties这个文件,用文本编辑器打开,其中有一行
java.util.logging.ConsoleHandler.encoding = UTF-8
,这项新版本Tomcat一般已经设置为了utf-8,如果不是则修改为utf-8
到这一步tomcat在命令行启动乱码就解决了,如果出现tomcat启动日志正常,而项目日志乱码直接跳到第5步,下面是使用idea还需要一点其他配置
- 修改idea的file encodings
- 修改idea的虚拟机参数
在文件最后加一行-Dfile.encoding=UTF-8
然后清除缓存重启idea
- tomcat启动日志正常,而项目日志乱码,这时还需要多一步设置项目启动虚拟机参数
-Dfile.encoding=UTF-8
如果是命令行启动tomcat,可以在tomcat安装目录下/bin/catalina.bat,用文本编辑器打开,在首行加上一句
JAVA_OPTS="-Dfile.encoding=UTF-8"
,保存然后重新启动
如果是idea则如下设置