Hibernate共提供了五种查询方式。
Hibernate的查询方式:OID查询
OID检索:Hibernate根据对象的OID(主键)进行检索
- get方法
Customer customer = session.get(Customer.class,1l);
- load
Customer customer = session.load(Customer.class,1l);
Hibernate的查询方式:对象导航检索
对象导航检索:Hibernate根据一个已经查询到的对象,获得其关联的对象的一种查询方式。(数据库中关系是两个表)
LinkMan linkMan = session.get(LinkMan.class,1l);
Customer customer = linkMan.getCustomer();
Customer customer = session.get(Customer.class,2l);
Set<LinkMan> linkMans = customer.getLinkMans();
Hibernate的查询方式:HQL检索(重点)
HQL查询:Hibernate Query Language,Hibernate的查询语言,是一种面向对象的方式的查询语言,语法类似SQL。通过session.createQuery(),用于接收一个HQL进行查询方式。
HQL的简单查询
HQL的别名查询
注意这里hql没有* 可通过select c from Coutomer c 起别名的方式进行
HQL的排序查询
HQL的条件查询
HQL的投影查询
投影查询:查询对象的某个或某些属性
HQL的分页查询
HQL的分组统计查询
HQL的多表查询
Hibernate的查询方式:QBC检索
QBC查询:Query By Criteria,条件查询。是一种更加面向对象化的查询的方式。
简单查询
排序查询
分页查询
条件查询
统计查询
离线条件查询(SSH)—DetachedCriteria
Hibernate的查询方式:SQL检索
SQL查询:通过使用sql语句进行查询