数据库时间类型字段精度问题
理论
Datetime Timestamp保存毫秒 防止精度丢失
- 数据库字段为 DATETIME(3) 时可以保存毫秒。
工程经验
- 当数据库为MariaDb 10.x.x,则需要jdbc驱动需更换为 mariadb connnector,或者Mariadb 相应Mysql 数据库版本高于 5.6.4则无需更改。
- DATETIME(3) 对应的 Java 类型,可以是 java.util.Date,可以是 jsr-310 里定义的其他 时间类型。
工程原理
- java 类型转化成 sql 对应的时间类型时,最终由数据库驱动通过 java.sql.Timestamp 进行处理。