JAVA填坑小知识new Date插入mysql数据库时多了一秒

Posted 后端研发Marion

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA填坑小知识new Date插入mysql数据库时多了一秒相关的知识,希望对你有一定的参考价值。


在使用new Date() 插入数据库时,查询出来比实际多了一秒,mysql 表字段设置为datetime类型,当时间精确到秒时,如果毫秒大于500时,会自动进位。

解决方法为格式化后再插入数据库。

/**
* 解决Date存入数据库中毫秒>500时进一位。
*/
public static Date nowDb()
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();

或者使用Jpa提供的SaveAndFlush(),刷新实体进行后台的操作。

以上是关于JAVA填坑小知识new Date插入mysql数据库时多了一秒的主要内容,如果未能解决你的问题,请参考以下文章

主键--避坑小知识

填坑:Java 中的日期转换

java Date 转mysql timestamp 秒数不一致

java里怎么往oracle数据库插入具体的时间

100个 Unity踩坑小知识点| Unity关闭Log日志输出

100个 Unity踩坑小知识点| Unity 的 LOD技术(多细节层次)