一、问题描述
idea下使用tomcat,中文日志乱码,如下图所示:

如果直接startup.bat通过启动的话,中文日志乱码的可以参考下这篇文章:https://blog.youkuaiyun.com/u011781521/article/details/116332248
二、解决方法
由于我这是在idea里使用tomcat,所以项目的编码用的都是utf-8,此时按如下步骤检查配置即可:
1.查看tomcat\conf\logging.properties文件中的编码是否为utf-8
java.util.logging.ConsoleHandler.encoding = UTF-8

2.idea查看项目编码是否为UTF-8

3.tomcat启动参数添加编码
-Dfile.encoding=UTF-8

也可以直接在这添加参数

3.修改idea配置文件添加编码,这里修改之后,最好重启下软件
-Dfile.encoding=UTF-8
-Dconsole.encoding=UTF-8

有个问题就是,修改好之后,打开软件,点击Help,edit custom vm选项查看下上面添加的两个配置是否加进来了,这里有可能没有,没有的话,这里也添加下

此时在idea中再启动tomcat基本上就没啥问题了

我这spring boot用的是logback作为日志,所以如果日志里中文乱码的话,还需要在logback的配置文件中,对输出日志指定下编码:
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!-- <pattern>${CONSOLE_LOG_PATTERN}</pattern> -->
<pattern>%date [%level] [%thread] %logger{80} [%file : %line] %msg%n</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
本文详细介绍了在IDEA环境下使用Tomcat时遇到的中文日志乱码问题及其解决方法。主要从调整Tomcat配置文件、设置IDEA项目编码、添加启动参数等方面入手,并针对SpringBoot项目使用logback时的日志乱码问题提供了具体配置指导。
1455

被折叠的 条评论
为什么被折叠?



