首先要分清是tomcat日志编码,与idea的日志显示控制台编码
tomcat日志编码:
- cmd内 “cd /d tomcat根目录” “bin\catalina.bat run” 运行,"chcp65001"切换cmd为utf8,"chcp 936"切换cmd为gbk,确定tomcat日志编码,一般因为tomcat/conf/logging.properties java.util.logging.ConsoleHandler.encoding = UTF-8已设置为utf8
idea显示编码(主要是这个问题):
- windows默认用gbk所以idea显示默认为gbk编码,【一定】在 Help-- custom vm options 添加-Dfile.encoding=UTF-8,强制为utf8编码显示,不要自己改.vmoptions可能位置不对,idea会在用户目录复制一个
- 注意:这一步不要去IDEA的安装目录中改bin目录下的配置文件,那个位置可能不对,我测试过,就按找介绍的这个方法在IDEA中改就行。
【切忌】自己改tomcat的logging.properties 为GBk 会导致调试时get/post参数乱码
加上最后一句:-Dfile.encoding=UTF-8
改完后启动tomcat,可看到乱码已经消失: