【问题标题】:JPA+Hibernate date displays wrong dataJPA+Hibernate 日期显示错误数据
【发布时间】: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 作为数据库,我的时区是孟加拉国达卡
  • 抱歉,您的链接对我没有帮助。请查看已编辑的问题。

标签: java spring date jpa


【解决方案1】:

更新数据库时区解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-06
    • 1970-01-01
    • 2021-09-10
    • 2013-12-16
    • 2018-03-22
    • 2015-12-09
    相关资源
    最近更新 更多