我希望为我的应用程序生成报告,其中一个报告需要显示今天给出的订单列表。对于我在EJB以下方法,没有返回值(调试,发现如此):基于当前日期的提取记录
public Collection<OrderStock> getOrderReport(String userName) {
String strQuery = null;
strQuery = "Select o from OrderStock o where o.userName.userName = :userName and o.orderDateTime = :orderDateTime";
Collection<OrderStock> c = em.createQuery(strQuery).setParameter("userName",userName).setParameter("orderDateTime", new Date(),TemporalType.DATE).getResultList();
return c;
}
如何解决这个问题呢?它为什么没有返回?
编辑: 我使用的MySQL作为后端 数据类型orderDateTime的是日期时间 例如在orderDateTime OS数据:2012-06-05 0点十二分32秒 2012-06-05 11时34分42秒 2012-04-05 12:32:45
显示我们没有在数据库中的数据,告诉我们orderDateTime列的类型。 –
编辑我的问题,包括你想要的...请参考... – z22
然后Joost的答案是正确的。你的查询测试是否显示错误,如果2012-06-05 == 2012-06-05 13:21:45.765。 –