乱码问题

最新项目也没有人动他,今天突然报错,才发现中文乱码了。。具体的包括,log日志乱码,sql中文入参乱码等等。
所有的中文都变成了 ???

经过排查:
下载日志文件,发现打印到文件中的日志就是乱码了。不是控制台的问题。意味着打印的时候就出现问题了,不会是回显的问题。

logback.xml已经指定打印日志的格式是UTF-8,相同的配置项目打印没有问题,可以判定不是配置文件的问题。

最近的做的事,就是给docker容器加时间使其时间跟服务器时间相同。莫非是这影响的???

本条博客,和我情况相同,根据博客整改:在DockerFile中启动命令增加启动参数,以指定文件编码格式:

# 省略 省略 前面内容,在最后后面增加启动参数-Dfile.encoding=utf-8
ENTRYPOINT ["java","-Dfile.encoding=utf-8","-jar","planning.jar"]

docker logs 中文乱码 docker日志中文乱码_docker logs 中文乱码

关于docker容器和服务器时间不同步的问题

不过似乎时间的问题,小伙伴似乎没有成功解决。。。。
查找博客:Docker部署容器与主机时间不一致问题 根据博客描述:
关于时区的同步,小伙伴已经做完了。
但是时间上还有差别,容器的时间跟服务器的时间差距确实是8小时(我的似乎不止8小时,,,,弄完了我算了一下,大约是8小时零3分钟。。。)

我在启动容器的命令上增加启动参数 -e JAVA_OPTS='-Duser.timezone=GMT+08' 发现在我这这种方式没用。。。

JAVA_OPTS给了我启发,我可以指定在项目启动的时候修改时间

整改方法:

# 省略 省略 前面内容,在最后后面增加启动参数
ENTRYPOINT ["java","-Dfile.encoding=utf-8","-Duser.timezone=GMT+08","-jar","planning.jar"]

最后问题算是解决了吧。。。。因为实际时间跟服务器上的时间,总是差那么几分钟。。。。

docker logs 中文乱码 docker日志中文乱码_JAVA_02


强迫症有点受不了。。。先这样吧,我去找找,这3分钟怎么补回来。。。