对于org.joda.time.contrib.hibernate.PersistentDateTime的Hibernate 4持久性支持有什么解决方法

时间:2012-10-24 13:19:10

标签: spring hibernate

大家好我是Spring的新手,正在使用以下依赖项构建应用程序

 <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version>2.1</version>
        </dependency>
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time-hibernate</artifactId>
            <version>1.3</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.1.7.Final</version>
        </dependency>
                <spring.framework.version>3.1.2.RELEASE</spring.framework.version>

我无法使用类org.joda.time.contrib.hibernate.PersistentDateTime中数据类型为DateTime的字段来保留对象。

@Column(name = "LAST_MODIFIED_DATE")
    @Type(type = "org.joda.time.contrib.hibernate.PersistentDateTime")
    public DateTime getLastModifiedDate() {
        return lastModifiedDate;
    }

有人可以建议如何使用joda DateTime。

1 个答案:

答案 0 :(得分:1)

我一直在尝试这一整天终于得到了解决方案如下。更高版本的hibernate不支持org.joda.time.contrib.hibernate.PersistentDateTime类持久性。相反,我们使用一些非常具体的库,如

<dependency>
    <groupId> org.jadira.usertype </groupId>
    <artifactId> usertype.core </artifactId>
    <version> 3.0.0.CR3 </version>
</dependency>

我们可以将数据保存在数据库中以供审核。

@Column(name = "CREATED_DATE")
    @Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
    public DateTime getCreatedDate() {
        return createdDate;
    }