SSM Mybatis mysql 存入&读取时间类型数据遇到的问题 DATE DATETIME TIMESTAMP

探讨MyBatis框架中处理MySQL时间字段的常见问题,包括存储与检索时间数据时的格式不一致现象,及如何通过配置实现统一的时间格式处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当我们使用mybatis框架连接mysql数据库时,操作 时间类型的数据时,会遇到以下两种情况:

问题一.存入的数据在数据库里面显示只有年月日,时分秒全部是是0,如: 2019-08-02 00:00:00

简述发生场景:这种情况,是因为mysql数据库里的相关字段的类型是 date,xml使用的类型也是DATE,java字段类型也是Date, 只截取了年月日。

问题二.存入的数据显示年月日时分秒,但是取出来作为接口返回值时,统一变成了时间戳,如:1562345092000

简述发生场景:这种情况,是因为mysql数据库里的相关字段类型是datetime,xml使用的类型,是TIMESTAMP,java字段类型是Date,所以数据库里面能正常显示时分秒,但是当取出的值需要放入ResponseBody返回时,发现变成了时间戳。

PS:存入的时间在数据库里面显示发现时间对不上,少了好几个小时的情况,直接在连接数据库的url后拼接上&serverTimezone=GMT%2B8
如:

url=jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8


以上两种情况都是非常常见的,那么我们应当怎么

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小目标青年

对你有帮助的话,谢谢你的打赏。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值