@Temporal DATE和Oracle问题

时间:2016-10-14 07:25:36

标签: java oracle hibernate jpa

我们有两台服务器(WebLogic 12.1.2.0.0),每台服务器运行相同的应用程序并连接到自己的数据库。服务器1具有Oracle Database 11g企业版11.2.0.1.0和Java 7,服务器2具有Oracle Database 11g企业版11.2.0.4.0和Java 8.

在这两种情况下,应用程序都使用:

  • hibernate-core 3.6.9
  • 冬眠-JPA-2.0-API-1.0.1
  • 冬眠-公地注解-3.2.0

在我们的一个课程中,我们有以下注释(日期为java.util.Date):

@Temporal(TemporalType.DATE)
@Column(name = "creationDate", nullable = false, length = 7)
public Date getCreationDate() {
    return this.creationDate;
}

在服务器1的情况下,日期被正确存储并从数据库中检索 - 时间总是等于00:00:00。在服务器2的情况下,日期与时间一起存储。

对于我们的应用程序,将日期设置为00:00:00(因此,基本上已删除)至关重要。我们可以为此问题创建一些变通方法,但仍无法理解此行为的原因。你能解释一下吗?

0 个答案:

没有答案