Hibernate 提供了强大的查询系统,使用 Hibernate 有多种查询方法可以选择:可以使用 Hibernate 的 HQL 查询,也可以使用条件查询,甚至可以使用原生的 SQL 查询语句。
HQL 语言看上去很像 SQL。但是 HQL 是一种面向对象的查询语句,跟数据库无关,它的操作对象是类、实例、属性等,而 SQL 的操作对象是数据表、列等数据库对象。由于 HQL 是完全面向对象的查询语句,因此可以支持继承、多态等特性。sql和hql本质上有差别,但实际使用没有什么差别,学会其中的一种就没问题。
执行HQL查询的步骤:
1、获得 Hibernate Session 对象
2、编写 HQL 语句
3、调用 Session 的 createQuery() 方法创建查询对象
4、如果 HQL 语句包含参数,则调用 Query 的 setXxx 方法为参数赋值
5、调用 Query 对象的 list 等方法返回查询结果。
我们之前实现的hibernate增删改查就是基于hql语句实现的 hibernate也提供了SQL查询:
SQLQuery sql = session
.createSQLQuery(
"select * from user_info")
.addEntity(User
.class)
转载请注明原文地址: https://ju.6miu.com/read-150027.html