现在的位置: 首页 > 综合 > 正文

getHibernateTemplate().findByCriteria()使用

2013年07月25日 ⁄ 综合 ⁄ 共 755字 ⁄ 字号 评论关闭

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框架中大多数查询吧。哈-----哈--------

     

抱歉!评论已关闭.