我需要在 Java 中编写休眠查询 (createSQLquery) 我有查询但我有点迷失了如何为我的查询创建条件。
基本上我必须将常规 where 子句转移到休眠 .add(Restriction)
例如让我们采取:
where (name LIKE '%test%' or lastname LIKE '%test%') and (site_id = 2) and (date>=121212 and date <= 343343)
Query query = sess.createSQLQuery(sql).addScalar("ID", Hibernate.long);
query.add(Restrictions.or (
Restrictions.like("name", "%test%")
Restrictions.like("lastname", "Fritz%")
))
.add(Restrictions.eq("site_id", new Integer(2)))
.add(Restrictions.add(Restrictions.gr("date_start", 122122)
.add(Restrictions.le("date_end", 345433)));
我没有机会运行它,因为现在无法访问我的环境,只是想弄清楚这一点。
谢谢