使用log4j的时候,在WIN系统的时候正常显示中文,但是发布到linux系统的时候中文就显示成乱码了
由于log4j配置文件中没有设置编码格式(encoding),所以log4j就使用系统默认编码。导致乱码。
解决方法是设置编码格式UTF-8,方法为(有时改成UTF-8还是会乱码,需要设置成GBK,这可能跟你输入的字符的编码有关):
log4j.appender.logfile.encoding=UTF-8
#### file log #####
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=D:/log/shop/logs.log
log4j.appender.logfile.MaxFileSize=5MB
log4j.appender.logfile.Threshold=DEBUG
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=[%d{MM/ddHH:mm:ss,SSS}] [%-3p] %c{1}: %m%n
log4j.appender.logfile.encoding=UTF-8