Hibernate——Criteria接口

来源:互联网 发布:金庸群侠传网络单机版 编辑:程序博客网 时间:2024/04/29 10:08

Hibernate——Criteria接口

Criteria查询通过面向对象的设计,将数据查询条件疯转为一个对象。简单的说,Criteria查询可以看成是传统SQL语言的对象化表示。

Criteria接口完全封装了基于字符串形式的查询语句,它更擅长于执行动态查询。

    Criteria criteria = session.createCriteria(Seller.class);    criteria.add(Restrictions.eq("tel", "13000000000"));    List<Seller> sellers = criteria.list();    for (Seller seller : sellers) {        System.out.println(seller.getAddress());    }

条件查询通常是通过以下3个类来完成的:

  1. Criteria:表示一次查询
  2. Criterion:表示一个查询条件。Criterion 的实例可以通过 Restrictions 工具类来创建。
  3. Restriction:表示查询条件的工具类。Restrictions提供了大量的静态方法,如eq(等于)、ge(大于)、between等,可以使用这些方法来创建Criterion 查询条件。

使用Criteria接口进行条件查询的主要步骤是:

  1. 利用Session实例的createCriteria(Class clazz)方法创建一个Criteria条件查询实例。
  2. 设定查询条件。
  3. 调用Criteria的list()方法执行查询条件。该方法返回List类型的查询结果,在List集合中存放了符合查询条件的持久化对象。

常用Criteria操作方法

add()方法

add()方法用来设置查询条件,可以根据查询条件的个数,追加任意个add()方法。

addOrder()方法

addOrder()方法用来设置查询结果集的排序规则。

参考

  • Hibernate中Criteria攻略详解
  • 第 16 章 条件查询(Criteria Queries)
0 0