我已将 Java.util.Date 类型的属性映射到 MySQL 数据库中的表列。它保存了整个日期/时间!我怎样才能让休眠只保存日期而不是时间。我的映射是:
<property name="registrationDate" type="java.util.Date">
<column name="regDate" length="10" />
</property>
我已将 Java.util.Date 类型的属性映射到 MySQL 数据库中的表列。它保存了整个日期/时间!我怎样才能让休眠只保存日期而不是时间。我的映射是:
<property name="registrationDate" type="java.util.Date">
<column name="regDate" length="10" />
</property>
您必须在表中将列指定为 DateTime 类型。只需将其设为日期类型列即可。所以只会存储日期部分。
编辑:
如果您使用表自动生成,您可以按如下方式定义您的 java.util.date;
@Temporal(DATE)
protected java.util.Date endDate;
如果您使用的是 xml 配置,则可以定义如下;
<basic name="myDate"/>
<temporal>DATE</temporal>
</basic>
如果您只需要今天的日期,您可以使用。在映射类中:
@Temporal(TemporalType.DATE)
@Column(name="ROW_DATE", length=7)
public Date getMyDate() {
return this.rowDate;
}
如果需要日期和时间,可以使用。在映射类中:
@Column(name="ROW_DATE")
public Date getMyDate() {
return rowDate;
}