如何告诉hibernate在DB中创建Date而不是timestamp?

时间:2014-01-14 09:57:29

标签: java hibernate postgresql

如何告诉hibernate应该在postgres SQL数据库中创建Date作为日期,而不是timestamp? 根据www.postgresql.org/docs/9.3/static/datatype-datetime.html日期应该可以,但是如何?

@Entity
class Test {
    private java.util.Date date;
}

变为:

CREATE TABLE test
(date timestamp without time zone)

1 个答案:

答案 0 :(得分:0)

使用Temporal annotation

@Temporal(TemporalType.DATE)
private Date date;

还有TIMETIMESTAMP TemporalTypesTIMESTAMP是默认值。

EDIT。您还可以使用适当的SQL类型之一:java.sql.Datejava.sql.Timejava.sql.Timestamp

数据库映射是相同的,无论您使用java.util.Date注释还是java.sql.*使用java.util.Date为您提供一致的接口,无论物理数据库映射如何,而sql类型可能会使您的意图更清晰