hibernate 使用@Temporal(TemporalType.DATE)更新时间

beq87vna  于 2023-10-23  发布在  其他
关注(0)|答案(3)|浏览(107)

关于@Temporal(TemporalType.DATE)的问题我有一个实体类,它有这样的属性:

@Temporal(TemporalType.DATE)
    @Column(name = "LAST_MODIFIED_DATE", length = 7)
    public Date getLastModifiedDate() {
        return this.lastModifiedDate;
    }

LAST_MODIFIED_DATE的现有值为
2016年11月5日22:11:31
现在我用11/05/2016 22:11:31的值更新它。但修改后的时间没有得到反映。我这样调用setter:

obj.setLastModifiedDate(new Date()) ;

任何帮助将不胜感激。
FYI,所有其他列得到正确更新

vvppvyoh

vvppvyoh1#

@Temporal有3个值

TemporalType.DATE

只有年,月,日。没有小时,分钟和秒

TemporalType.TIME

只有一小时,一分,一秒。没有年、月、日

TemporalType.TIMESTAMP

拥有一切年、月、日、时、分、秒

rpppsulh

rpppsulh2#

我认为你应该使用:用途:@Temporal(TemporalType.TIMESTAMP)

mlmc2os5

mlmc2os53#

@Temporal(TemporalType.TIMESTAMP)
private Date date;

setDate(new Date);
这将有日期和时间。

@Temporal(TemporalType.TIME) // for only time also

您可能还需要重新创建您的表。有时JPA无法理解其中的区别

相关问题