背景:凌晨项目更新,代码流程没有问题,沉浸在新的接口发布成功的喜悦中,完全没想到会在这么简单的问题上载了一下,到第二天对账时发现,生成的流水号怎么不对。排查了一下日志打印的时间,数据库表在插入数据的时候的时间,然后代码逻辑没问题,那肯定是引用的包的问题了。
查看源码才发现,这里默认的是美国时区,尴尬......
这么常用的一个工具类,竟然会有这样的问题,好吧,以后不敢了。换了其他工具包的时间格式包就可以了,org.apache.commons.lang3.time.DateFormatUtils.format(Date date, String pattern)
源代码相关代码如下:
好了,祝愿所有同行们,代码无bug,谢谢。