有道是,生命不息,困难不止。
程序员只要活着,就会有bug。
刚发现了个问题,热乎的,我也不知道是不是springboot的bug,还是我使用姿势不对,它的定时器里时区有问题,骚的是,只有服务器上会这样。
打印结果如图:
我用的是最基础的new Date()啊,还有问题,真的麻了。
我说最近怎么定时器的任务没触发。
看了下服务器的时间没问题。
再看了下,通过接口新增的数据,时区也没问题。
我人傻了,打印一下定时器的时间,就发现了问题。
时区有问题,就设置时区呗,上网搜了下:
来源:如何设置java.util.Date的时区?
就这样弄吧,朋友们可以参考下:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm");
// 国内时区是GMT+8
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT+8"));
String time = simpleDateFormat.format(now);