joda.time.DateTime与hibernate createQuery to setDate

时间:2011-02-21 12:58:53

标签: hibernate jodatime

pojo

public class RateCode implements java.io.Serializable {

     private org.joda.time.DateTime travelTo;
     private org.joda.time.DateTime bookingFrom;
}

查询

Query q = session.createQuery(
                "from RateCode rr where rr.id.date>=:from and rr.id.date<=:to order by rr.id.date").setDate("from", from).setDate("to", to);

但是setDate / setTimeStamp需要util.Date。

ERROR: java.lang.NoSuchFieldError: TIMESTAMP
        at org.joda.time.contrib.hibernate.PersistentDateTime.nullSafeSet(PersistentDateTime.java:83)

所以如何设置createQuery条件。

2 个答案:

答案 0 :(得分:2)

您可以使用为joda-time创建的自定义用户类型。您可以下载here

Persisting Joda DateTime instead of Java Date in Hibernate

答案 1 :(得分:2)

请查看我的项目http://usertype.sourceforge.net/,它可让您将Joda Time映射到Hibernate。

谢谢Chris