1 Criteria对象
1.1 不要语句
1 使用hql查询需要写hql语句实现,但是使用qbc时候,不需要写语句了,使用方法实现
2 使用qbc时候,操作实体类和属性
3 使用qbc,使用Criteria对象实现
1.2 实现过程
(1)创建criteria对象
(2)调用对象里面的方法得到结果
2 QBC查询
2.1 查询所有
1 创建Criteria对象
2 调用方法得到结果
2.2 条件查询add()
没有语句,使用封装的方法实现
模糊查询:
2.3 排序查询addOrder()
Order的方法:
2.4 分页查询
开始位置计算公式: (当前页-1)*每页记录数
2.5 聚集函数--统计查询
2.6 离线查询—没啥意义,方便写条件查询加条件
2.6.1 意义
一般我们进行web开发都会碰到多条件查询。例如根据条件搜索。条件的多少 逻辑关系是or 还是and等等。我们要根据这些条件来拼写查询语句。我们可以使用DetachedCriteria来构造查询条件就不必为了查询条件的变化而去频繁改动查询语句了。
离线查询就是建立一个DetachedCriteria对象,将查询的条件等指定好,然后在session.beginTransaction()后将这个对象传入。通常这个对象可以在表示层建立,然后传入业务层进行查询。
2.6.2 示例
servlet调用service,service调用dao
(1)在dao里面对数据库crud操作
(2)在dao里面使用hibernate框架,使用hibernate框架时候,调用session里面的方法实现功能