如何在JPA的MySQL中查詢DateTime?之前的變量是以毫秒爲單位的Date()對象。我會做類似如下:Java中按日期查詢JPA
@Override
@Transactional(readOnly = true)
public List<Entry> findAllBefore(Long before, Integer nEntries)
{
CriteriaBuilder builder = this.getEntityManager().getCriteriaBuilder();
CriteriaQuery<Entry> criteriaQuery = builder.createQuery(Entry.class);
Root root = criteriaQuery.from(Entry.class);
criteriaQuery.select(root);
// seems not to work
criteriaQuery.where(builder.lessThan(root.get("start") , before));
TypedQuery<Entry> typedQuery = this.getEntityManager()
.createQuery(criteriaQuery)
.setMaxResults(nEntries)
return typedQuery.getResultList();
}
我想有從相應的表所在的日期時間列的「開始」是「之前」變量值之前的所有條目。
你需要的究竟是什麼? – ashokhein 2014-12-11 06:25:21
我編輯了我的帖子。請看最後一句,請 – Xear 2014-12-11 07:14:14
我想你必須把你的long轉換爲Date對象。 – Jens 2014-12-11 07:49:07