windows上时间项目时间正常,Ubuntu16.04上时间错误

项目本次测试时间正常,放到服务器上时间差8个小时

1.查看Ubuntu系统时间,发现时间设置错误

date -R

该命令会把我们系统的时间还有时区显示出来,我们是属于东八区,如下图:

如果不是 +0800 这个时区的话,就说明我们的时区不对。如果时区正确,系统时间还是有问题,那么我们需要同步网络时间。

 

安装ntpdate工具:

sudo apt-get install ntpdate

同步系统时间与网络时间

sudo ntpdate cn.pool.ntp.org

做完上面两步之后,显示时间就可以正常了。

2. 时区不正确的情况

如果我们查看到自己系统的时区不正确的话,那么我们只要重新设置时区就可以让时间显示正确了。

运行 tzselect 工具

sudo tzselect
  1. 运行这个工具之后,会有文本的简单交互。在这里我们选择亚洲 Asia ,确认之后选择中国 China ,最后选择北京 Beijing ,最后再选择 YES 确认即可。

复制文件到 /etc/localtime 目录下

sudo cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

 

 

上诉操作完成后,查看Ubuntu时间,显示正确,但是项目采集的时间任然错误

最后找到原因,在项目时区配置的地方修改时区为中国时区

/**
     * 时区配置
     */
    @Bean
    public Jackson2ObjectMapperBuilderCustomizer jacksonObjectMapperCustomization() {
        //Ubuntu16.04系统中添加以下代码
        TimeZone time = TimeZone.getTimeZone("Etc/GMT-8");  //转换为中国时区
        TimeZone.setDefault(time);
        return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(time);
    }

 

posted @ 2023-07-07 16:11  贾斯丁哔哔  阅读(56)  评论(0编辑  收藏  举报