欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用DetachedCriteria分离查询条件

程序员文章站 2022-05-23 09:19:52
...
Service

Criterion c1 = Restrictions.eq("diprojectId", projectId);
Criterion c2 = Restrictions.in("digroupId", groupId);
Criterion c3 = Restrictions.eq("divalid", Const_val.C_INT_VALID);
List<TbDeviceInfo> deviceInfoList = deviceInfoDao.findAvlByProIdAndGroupId(projectId, groupId, c1, c2, c3);


Dao

public List<TbDeviceInfo> findAvlByProIdAndGroupId(Integer projectId, Collection<Integer> groupId, Criterion... c)

DetachedCriteria criteria = DetachedCriteria.forClass(TbDeviceInfo.class);

for (Criterion criterion : c) {
criteria.add(criterion);
}
List<TbDeviceInfo> results = getHibernateTemplate().findByCriteria(criteria);