hibernate不会仅在午夜存储粒度日期

时间:2015-09-23 16:37:15

标签: java hibernate date jdbc

我有一个带有时间戳字段的表entrydate(Postgres timestamp without timezone类型),但是当它与hibernate一起传播时,它的所有值似乎都被截断,粒度明智,只是当天的午夜(好的,设置日期)la 2013-04-19 00:00:00如何获得更好的粒度,如秒,小时,分钟,毫秒?

hibernate cfg xml文件:

<class name="Tape" table="Tape">
  <property column="EntryDate" name="EntryDate" type="date"/>`
  ...
 </class>

它使用java类java.util.Date中的Tape对象,带有适当的getter和setter,并且它们可以用于序列化它,它最终将它保存在DB中而没有任何精度/粒度超过这一天。

1 个答案:

答案 0 :(得分:1)

原来&#34; date&#34;在休眠状态是&#34;只是白天,而不是时间&#34;不像java Date类,它具有毫秒级的粒度。

修复是使用休眠时间戳:

<property column="EntryDate" name="EntryDate" type="timestamp"/>

现在它在数据库中具有毫秒级的粒度。