问题现象
原来比较久的spring项目,使用的还是外置的tomcat。war包项目本地启动的时候,控制台输出的tomcat启动日志是乱码,项目logback打出来的日志正常。
原因分析
- idea控制台的编码: 跟着系统走的,系统的编码是GBK,那么对应的控制台使用的编码是GBK
- 从官网下载下来的新版本的tomcat对输出编码做了默认值设置:
logging.properties文件
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter
java.util.logging.ConsoleHandler.encoding = UTF-8
idea控制台的编码和tomcat输出控制台的编码不一致导致的乱码
处理方式
将logging.properties做调整: java.util.logging.ConsoleHandler.encoding = GBK