其他分享
首页 > 其他分享> > Calendar 导致的一个bug

Calendar 导致的一个bug

作者:互联网

bug的表现

查询不到数据。

bug的排查过程

把Calendar生成的Date通过getTime()打印出时间戳。

bug原因分析

因为数据库里的数据是每天生成的,所以对应的时间毫秒为0,而Calendar生成的时间没有对毫秒进行set值覆盖,导致使用到了当前时间的毫秒值。此时由于查询条件是 >= 导致这部分数据被忽略掉了。

总结

由于 Calendar.getInstance(); 是通过当前时间进行初始化,如果没有显性给对应的对应的field进行set值的话,就会使用的是当前时间的field。(下次使用 Calendar 时一定记得对所有的时间field进行赋值,确保不出问题。)

标签:导致,set,毫秒,field,时间,Calendar,bug
来源: https://www.cnblogs.com/math-and-it/p/15823447.html