Hibernate的查询方式
1.OID检索:
使用session.get(Object.class,oid),session.load(Object.class,oid),根据表的主键查询
2.对象导航检索:
根据已有对象查询与之对应的另外一些对象,比如一个Customer对象中有一个Linkmans(联系人对象)集合,当查询出Customer后,直接变量linkMans集合就可以查询到与之对应的联系人
配置文件:
3.HQL检索:
使用session.createQuery("HQL语句")查询
条件的添加:
1.使用占位符
2.使用别名
分页查询:q.setFirstResult(0):设置第一条数据的位置
q.setMaxResults(3):设置查询数据的条数(也就是每页多少条)
多表查询:注意第一种写法和第二种写法的区别
4.QBC检索:
Criteria criteria = session.createCriteria(Customer.class);
criteria.add(Restrictions.like("参数1","参数2"));
参数1:所添加条件的属性名,比如Customer类中的cust_name属性
参数2:条件的值,比如 "路%" (这里使用的是like)
QBC离线查询:当前台需要多条件查询的时候,在web层将这些条件封装到DetachedCriteria,便于传递到持久层
5.SQL检索:
session.createSQLQuery("正常SQL语句").list();