带时间戳的kundera-cassandra criteriaquery

时间:2015-12-17 13:03:39

标签: java cassandra kundera

我想用Kundera创建一个Query,它比较where子句中的时间戳。 我的cassandra模型看起来像这样:

CREATE TABLE booking.booking (
 id uuid,
 amount decimal,
 timestampCreate timestamp,
 timestampUpdate timestamp,
 PRIMARY KEY (id, timestampCreate)
);

我尝试使用以下代码(使用javax.persistence.criteria.CriteriaBuilder)

CriteriaBuilder criteriaBuilder = manager.getCriteriaBuilder();
CriteriaQuery<T> criteriaQuery = criteriaBuilder.createQuery(clazz);
Root<T> from = criteriaQuery.from(clazz);
from.alias("t");
criteriaQuery.select(from);
criteriaQuery.where(criteriaBuilder.greaterThan(from.get("timestampCreate"), (Date)myDate));

我班上的财产:

@Column(name="timestampcreate")
private java.util.Date timestampCreate;

但是当我执行时,我得到以下错误:

java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Date
at com.impetus.kundera.property.accessor.DateAccessor.toString(DateAccessor.java:166) ~[kundera-core-3.2.jar:?]

我不知道字符串来自何处,我明确地给它们一个日期对象。有什么建议吗?

0 个答案:

没有答案