HQL和QBC和QBE + hibernate检索方式

来源:互联网 发布:廖雪峰python教程 pdf 编辑:程序博客网 时间:2024/06/06 05:52

HQL和QBC和QBE
QBC:Query By Critical
QBE:Query By Example

hibernate的QBE和QBC

Session对象提供了两个方法可以获得Query对象
Query createQuery(String queryString)  接受HQL
SQLQuery createSQLQuery(String queryString)  接受SQL

HQL:Hibernate Query Language
Query query = session.createQuery("from Customer"); //这里Customer是类名

SQL:Structured Query Language
Query query = session.createSQLQuery("select * from customer"); //这里参数就是普通SQL语句 


HQL查询结果会自动封装为Java对象
Query query=session.createQuery("from Customer");
List<Customer> list=query.list();


hibernate检索方式
1)导航对象图检索方式: 根据已经加载的对象导航到其他对象----Customer c = session.get(Customer.class,1);c.getOrders();
2)OID 检索方式:  按照对象的 OID 来检索对象-----get/load
3)HQL 检索方式: 使用面向对象的 HQL 查询语言----Query query = session.createQuery(hql);
4)QBC 检索方式: 使用 QBC(Query By Criteria) API 来检索对象. 这种 API 封装了基于字符串形式的查询语句, 提供了更加面向对象的查询接口.
5)本地 SQL 检索方式: 使用本地数据库的 SQL 查询语句----SQLQuery query = session.createSQLQuery(sql);
0 0
原创粉丝点击