在我的数据库中,我只想保存数据而没有时间.
如果我使用日历或日期类型,我可以写:
@Column(name = "CDATE")
@Temporal(TemporalType.DATE)
Calendar cDate; // or Date cDate
但是如果我想使用时间戳数据类型,则时间注释不具有时间戳类型:
@Column(name = "CDATE")
@Temporal(TemporalType.DATE)
Timestamp cDate;
我知道,使用时间戳记日期类型不是可取的方法,但是根据我的体系结构,我需要它.而且我不想每次都将cDate中的分钟,小时和其他单位设置为零值.
有什么办法解决它.
附言我使用开放式JPA和Oracle数据库.
解决方法:
在Oracle 10中,只有DATE列类型,您可以通过在实体类上的列的注释中设置大小来确定日期或时间戳记类型
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "START_DT", table="PART_DETL", nullable = false, length = 13)
public Date getTbl1StartDt() {
return this.tbl1StartDt;
}
为了约会,用这个…
@Temporal(TemporalType.DATE)
@Column(name = "START_DT", table="PART_DETL"/*, nullable = false, length = 13*/)
public Date getTbl1StartDt() {
return this.tbl1StartDt;
}
public void setTbl1StartDt(Date tbl1StartDt) {
this.tbl1StartDt = tbl1StartDt;
}
标签:jpa,java
来源: https://codeday.me/bug/20191202/2086615.html