long delay = ChronoUnit.MILLIS.between(now, prize.getEndTime());
问题
这段代码是做定时抽奖,开启一个延时任务,这里计算的时间单位毫秒,但是这个时间总是很大,打印prize.getEndTime()
发现时间不准,大概8小时时差。
原因
jdbc:mysql://47*****:3306/li***?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&allowPublicKeyRetrieval=true&verifyServerCertificate=false&useSSL=false
解决
serverTimezone=UTC 改成 serverTimezone=Asia/Shanghai