Java+mybatis+mysql:Date类型保存为datetime时,毫秒的影响

Java+mybatis+mysql:Date类型保存为datetime时,毫秒的影响

java使用mybatis框架,将Date类型存储为datetime时,会受到Date毫秒值的影响。

描述:开发过程中先存储Date数据到数据库中,然后将Date格式化为yyyy/MM/dd HH:mm:ss ,调用其他接口进行操作,发现数据库中的时间比接口重新生成的时间多一秒。

直接使用mysql进行测试

CREATE TABLE `test` (
  `time` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

插入时间操作

insert into test (time) value('2019-10-12 10:20:09.3');
insert into test (time) value('2019-10-12 10:20:09.4');
insert into test (time) value('2019-10-12 10:20:09.49');
insert into test (time) value('2019-10-12 10:20:09.4999');
insert into test (time) value('2019-10-12 10:20:09.5');
insert into test (time) value('2019-10-12 10:20:09.500');
insert into test (time) value('2019-10-12 10:20:09.6');
insert into test (time) value('2019-10-12 10:20:09.7');

结果
结果
毫秒数第一位大于5时,就会多加一秒,小于5就不会,只与第一位有关,.4999也不多家一秒。

没有找到官方说明,个人测试,不足之处还请指正。


版权声明:本文为weixin_44957529原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。