【发布时间】:2019-12-17 05:44:00
【问题描述】:
我使用的是hibernate+spring+mysql 5.7。当我保存日期 20/04/1939 时,它会正确存储在数据库中。
@Column(name = "birth_date")
@Temporal(TemporalType.DATE)
private Date birthDate;
保存后存入数据库的值为1939-04-20。
当我使用
显示它时person.getBirthDate()
它显示 19/04/1939。它与我的格式无关。 它从 db 检索的值少了一天。
当我将 1939 年与任何日期一起使用时,它总是显示少 1 天。那么这里有什么问题呢? 同样对于其他年份,日期显示完美。
【问题讨论】:
-
看起来像是时区问题。你用的是什么数据库?您的计算机使用的是哪个时区?
-
我使用 mySql 5.5 作为数据库,我的时区是孟加拉国达卡
-
抱歉,您的链接对我没有帮助。请查看已编辑的问题。