我必须做什么
我必须找到持续时间超过72天且不必使用原始SQL查询的记录。
基本结构
public class Subscription {
String status;
Date startDate;
Date endDate;
}
更改结构(由于JDO限制或我对JDO的了解不足)。
public class Subscription {
String status;
Long startDate; /* Date in epoch format */
Long endDate; /* Date in epoch format */
/* There are some other fields which are not needed for this question*/
}
public class PerformOperation {
public static void main() {
long day = 1000*60*60*24;
Query query = pm.newQuery(Subscription.class); /*where pm is PersistentManager*/
query.setFilter("(endDate - startDate)/day >72");
query.declareParameter("double day");
List<Subscription> subs = query.execute(day);
}
}
问题
我不想改变域类的基本结构。有没有更好的方法来使用jdo查找两个日期之间的天数。