无法从hibernate更新PostgreSQL中表的时间戳字段

时间:2013-06-28 09:28:25

标签: java hibernate jpa jdbc

我有一个表'task',在PostgreSQL中有一个Timestamp类型的字段'updated_ts'。我正在尝试使用hibernate更新此字段,如下所示:

Timestamp currentTimestamp= new Timestamp((new Date()).getTime());
task.setId(id);
task.setUpdated_ts(getCurrentTimeStamp());
sessionFactory.getCurrentSession().update(task);

当我第一次运行此代码时,在启动Tomcat服务器后,我可以更新当前时间戳,例如“2013-06-28 14:37:47.425”。但是,当我再次运行它时,它会更新相同的时间戳,即使对于不同的行也是如此。

有人请帮忙。

1 个答案:

答案 0 :(得分:0)

似乎你在实例级别声明了currentTimestamp一次。将此逻辑放入getter应解决问题。

public Timestamp getCurrentTimeStamp() {
    return new Timestamp((new Date()).getTime());
}