我可以使用
获取记录`Criteria crit = session.createCriteria(GenerateInvoiceBean.class);
crit.add(Restrictions.eq("dealerId", dealerId)).add(Restrictions.between("billDate", frDate, tDate));
List<GenerateInvoiceBean> gib = crit.list();
return gib;`
由于在Hibernate 5.1.16中不推荐使用createCriteria,我正在尝试使用
`CriteriaBuilder builder = session.getCriteriaBuilder();
CriteriaQuery<GenerateInvoiceBean> query = builder.createQuery(GenerateInvoiceBean.class);
Root<GenerateInvoiceBean> root = query.from(GenerateInvoiceBean.class);
query.select(root).where(builder.equal(root.get("dealerId"), dealerId)).where(builder.between(root.get("billDate"), frDate, tDate))
.orderBy(builder.asc(root.get("billNo")));
List<GenerateInvoiceBean> gib = session.createQuery(query).getResultList();
return gib;`
哪个不行。 任何解决方案或建议都会很棒!感谢
答案 0 :(得分:1)
将CriteriaQuery调用更改为
query.select(root)
.where(builder.equal(root.get("dealerId"), dealerId),
builder.between(root.get("billDate"), frDate, tDate))
.orderBy(builder.asc(root.get("billNo")));
所以两个where子句在一次调用中一起处理。