今天在修改bug时遇到一个查询异常:根据时间段查询的时候,如果查询时间段含12点钟,那么能查到时间段之外的其他数据;
跟踪了数据流动发现,前同事写的程序中,有一处是讲前端传来时间字符串转为Date的一种时间格式;
发现问题在于:遇到时间段里含有“12”将被转为“00”,比如“ 2018-05-05 12:12:20 ” 会被转成 :“2018-05-05 00:12:20”;
这样的直接结果就是查今天12点后的数据,将查询到今天0点后的所有数据;
发现根本原因是前同事在用 SimpleDateFormat(format)时,format是:yyyy-MM-dd hh:mm:ss,也就是用了12小时格式;
这样很容易把中午12和夜间12混淆。。。。。
后来也就是改了个参数的大小写。。。。
编码开发,要效率也要细节啊。
关于SimpleDateFormat:
关于Date和String互转:
原文地址:https://www.cnblogs.com/ynhwl/p/10321253.html
时间: 2024-10-10 18:30:16