2

我已将 Java.util.Date 类型的属性映射到 MySQL 数据库中的表列。它保存了整个日期/时间!我怎样才能让休眠只保存日期而不是时间。我的映射是:

    <property name="registrationDate" type="java.util.Date">
        <column name="regDate" length="10" />
    </property>
4

2 回答 2

8

您必须在表中将列指定为 DateTime 类型。只需将其设为日期类型列即可。所以只会存储日期部分。

编辑:

如果您使用表自动生成,您可以按如下方式定义您的 java.util.date;

@Temporal(DATE)
protected java.util.Date endDate;

如果您使用的是 xml 配置,则可以定义如下;

<basic name="myDate"/>
<temporal>DATE</temporal>
</basic>
于 2013-01-11T14:32:50.743 回答
0

如果您只需要今天的日期,您可以使用。在映射类中:

 @Temporal(TemporalType.DATE)
    @Column(name="ROW_DATE", length=7)
    public Date getMyDate() {
        return this.rowDate;
}

如果需要日期和时间,可以使用。在映射类中:

 @Column(name="ROW_DATE")
    public Date getMyDate() {
        return rowDate;
    }
于 2021-07-12T20:22:15.777 回答