在数据库中存储joda-time datetime

Far*_*san 4 java datetime jpa jodatime

我的应用程序已经使用Joda-time进行日期操作,计划在不久的将来升级到jsr 310.

现在我需要使用jpa 2和hibernate在数据库中存储非常准确的时间戳,但java.util.Date不存储毫秒值.

我找到了UserType并像这样配置了我的entitybean

    @Column( name = "TRANSACTION_TIME" )
@Type(type="org.jadira.usertype.dateandtime.joda.PersistentDateTime")
private DateTime transactionTime;
Run Code Online (Sandbox Code Playgroud)

但它仍然没有存储毫秒.

我通过了这个2010-11-02 12:02:54.945,但当我检索它时,它是2010-11-02 12:02:54.000.

我还需要做些什么才能获得毫秒存储时间和可能的时区?

更新 我刚刚检查过,毫秒实际上是在数据库中,但Hibernate没有在返回的结果中包含它.同一格式化程序打印了两个结果,因此无法格式化问题

nfe*_*ner 5

这可能不是您想要的,但您可以将时间存储为数字(= epoch以来的毫秒数)而不是datetime字段.