getHibernateTemplate().findByCriteria()使用

getHibernateTemplate().findByCriteria()使用
用了这么多次getHibernateTemplate().findByCriteria(),现在才发现它很好用,可以解决很多查询问题。
  getHibernateTemplate().findByCriteria(criteria)可以查询不需要分页的数据,

getHibernateTemplate().findByCriteria(criteria, firstResult, maxResults)可以用来查询需要的分页的属性,

例如:
  HibernateTemplate ht=this.getHibernateTemplate();
  DetachedCriteria criteria=DetachedCriteria.forClass(Paper.class);
  ht.findByCriteria(criteria, firstResult, maxResults);

有了上面的criteria就更好用了,criteria可以使用add()方法添加我们需要的查询条件,就好比SQL语句中的where条件语句

而add()方法可以使用Restrictions类的静态方法返回值作为参数,例如:
  criteria.add(Restrictions.in("TExams", examsList)).add(Restrictions.eq("patype", 0));

Restrictions类又很多的方法可以代替SQl语句中的“>、=、<、!”等,还包括了isNull、in、and、or等等很多,具体的网上有很多资料。

灵活的使用findByCriteria可以解决SSH框架中大多数查询吧。哈-----哈--------

猜你喜欢

转载自wyj365372704.iteye.com/blog/2217647