Java Google应用程序引擎,JDO,在过滤器中使用日期
在我的应用程序中,我希望从数据存储中获取一组实体,这些实体的日期字段设置为当前时刻之前的日期 我确实意识到,实现这一点的方法之一就是简单地将这些实体中的日期存储为Java Google应用程序引擎,JDO,在过滤器中使用日期,java,google-app-engine,filter,google-cloud-datastore,java.util.date,Java,Google App Engine,Filter,Google Cloud Datastore,Java.util.date,在我的应用程序中,我希望从数据存储中获取一组实体,这些实体的日期字段设置为当前时刻之前的日期 我确实意识到,实现这一点的方法之一就是简单地将这些实体中的日期存储为long毫秒值 但实际上是否有一种方法可以将它们存储为Dates,并能够使用它们进行过滤 我试过类似的东西 query.setFilter(“dateField.before(dateParam)”),但它不起作用,简单的比较也不起作用 提前感谢。只需将日期字段声明为java.util.Date,然后使用 query.setFilter
long
毫秒值
但实际上是否有一种方法可以将它们存储为Date
s,并能够使用它们进行过滤
我试过类似的东西
query.setFilter(“dateField.before(dateParam)”)代码>,但它不起作用,简单的比较也不起作用
提前感谢。只需将日期字段声明为java.util.Date
,然后使用
query.setFilter("dateField < dateParam");
query.declareParameters("java.util.Date dateParam");
List<...> results = (List<...>) query.execute(new java.util.Date());
query.setFilter(“dateField
参见此处示例:康斯坦丁的解决方案给出:
运算符<不能用作联接条件的一部分
在参数名称之前添加冒号使其适用于我:
q.setFilter("createdTime < :nowTime");
List<...> result = (List<...>) q.execute(new java.util.Date());
q.setFilter(“createdTime<:nowTime”);
List result=(List)q.execute(new java.util.Date());