0

我的 oracle 11g 数据库表中有一个时间戳属性。我从表中生成了 JPA 实体,并且时间戳属性被创建为日期实体。我只想将时间值存储和检索到数据库中。这个怎么做?我正在使用eclipseLink2.4

4

1 回答 1

0

您可以使用@Temporal(TemporalType.TIME)注释

@Temporal(TemporalType.TIME)
private Date value;

然后只有时间部分应该存储到数据库中。

如果您使用 JPA Criteria API 创建查询,则应确保现有数据的日期部分为零。即在 Oracle 数据库上,如果您查询select to_char(timecolumn,'dd.mm.yyyy hh24:mi:ss') from sometable结果应该像这样的数据"01.01.1970 XX:XX:XX"。通常,如果您使用 JPA 来存储时间值,TemporalType.TIME它会为您解决这个问题。如果日期部分不为零,则比较时间字段可能会出现问题。

于 2013-04-22T09:42:14.457 回答