Mysql使用Mybatis进行时间操作

2023-12-29 22:57:37

MySQL中支持以下日期时间类型:

  1. DATE:存储年月日(例如:2023-04-05)。范围从"1000-01-01"到"9999-12-31"

  2. TIME:存储时分秒(例如:11:22:22)。范围从"-838:59:59"到"838:59:59"

  3. DATETIME:同时存储年月日和时分秒(例如:2023-04-05?11:22:22)。范围从“1000-01-01 00:00:00”到“9999-12-31 23:59:59”

  4. TIMESTAMP:与DATETIME相同,但是它的范围更小,仅支持1970-2038。

  5. YEAR:存储4位数的年份(例如:2023)。范围从1901到2155

启动报错,? date5 在实体类中是java.util.Date类型? ? 数据库是year类型

先将date5在插入时候去掉

再次启动,数据被插入

将date5实体类改成String

插入成功?

也就是说mysql数据库的year类型? 需要用字符串? ?那么我用int? Integer? 这样行不行呢

也是可以的

用 int Integer? ?double Double? float Float 设置值时候家f? Long long? 都是可以的

下面试下查询? ? ? ? 这里测试的Boot版本是2.7.2? mysql是8.0

下面实体类类型换成String

这里dat1到date5都需要注意范围和格式

实体类全部换成String类型后

查询

如果要换成2023/09/09这样格式? ?需要设置数据库的时间格式? 其实个人觉得数据库时间字段的话

实体类属性类型可以用String更简单

关于SimpleDateFormat作为成员变量的线程安全问题

字符串转Date是存在并发安全问题的? 用了共有的Calender

但是将Date转指定格式字符串不存在安全问题

SimpleDateFormat存在的线程安全问题-CSDN博客

文章来源:https://blog.csdn.net/tiantiantbtb/article/details/135298710
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。