1

こんにちは、私は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 の使用方法を提案できる人はいますか。

4

1 に答える 1

1

私はこれを一日中試していましたが、最終的に次のような解決策を得ました。org.joda.time.contrib.hibernate.PersistentDateTime クラスの永続性は、上位バージョンの hibernate ではサポートされていません。むしろ、次のような非常に特殊なライブラリを使用します。

<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;
    }
于 2012-10-25T08:51:13.007 に答える