简单问题:如何用Java获取当前日期以用于GQL查询?

简单问题:如何用Java获取当前日期以用于GQL查询?,java,google-app-engine,gql,Java,Google App Engine,Gql,我有一个Users表,它有一个名为“date”的元素。 我想让这些伪代码查询在Java中工作: 从日期=今天的用户中选择* 而且 选择*来自日期为“本小时”的用户 如何编写查询 我使用的是Google App Engine,日期最初是使用java.util.date创建的 请帮忙。谢谢 PreparedStatement st = conn.prepareStatement("select * from Users where date = ?"); st.setDate(1, new java

我有一个Users表,它有一个名为“date”的元素。 我想让这些伪代码查询在Java中工作:

从日期=今天的用户中选择*

而且

选择*来自日期为“本小时”的用户

如何编写查询

我使用的是Google App Engine,日期最初是使用java.util.date创建的

请帮忙。谢谢

PreparedStatement st = conn.prepareStatement("select * from Users where date = ?");
st.setDate(1, new java.sql.Date(System.currentMillis());
ResultSet rs = st.executeQuery();
jiql是云计算数据库的JavaJDBC包装器。通过jiql jdbc客户机访问数据库。数据实际上存储在基于云的数据存储中,比如谷歌的BigTable


因为GoogleAppEngine中的日期使用“=”将时间指定为毫秒,所以不太可能工作

看起来您可以执行以下操作:

select from Users where date >= midnightWesnesday
                      && date < midnightThusday;
从日期>=周三午夜的用户中选择
&&日期<周四午夜;

您还应该能够相应地为小时指定正确的范围。

您不能在App Engine上使用JDBC。@Thilo,这些类被列为白名单:@Thilo,很好,它们实际上可以工作。它非常有用,这样您就可以重用现有代码(查看jiql)好的,有了到jiql的有趣链接,这个答案是有意义的。但不确定这种方法的有效性。。。