Hibernate的检索方式

HQL(Hibernate Query Language)

  • HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在
    Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. 它有如下功能:

    • 在查询语句中设定各种查询条件
    • 支持投影查询, 即仅检索出对象的部分属性

    • 支持分页查询

    • 支持连接查询
    • 支持分组查询, 允许使用 HAVING 和 GROUP BY 关键字

    • 提供内置聚集函数, 如 sum(), min() 和 max()

    • 能够调用 用户定义的 SQL 函数或标准的 SQL 函数

    • 支持子查询

    • 支持动态绑定参数

OID 检索方式

按照对象的 OID 来检索对象

QBC 检索方式

使用 QBC(Query By Criteria) API 来检索对象. 这种 API 封装了基于字符串形式的查询语句, 提供了更加面向对象的查询接口.

简单的查询

这里写图片描述

使用别名

这里写图片描述

对查询结果排序

这里写图片描述

分页查询

  • 分页查询:

  • setFirstResult(int firstResult): 设定从哪一个对象开始检索, 参数 firstResult
    表示这个对象在查询结果中的索引位置, 索引位置的起始值为 0. 默认情况下, Query 从查询结果中的第一个对象开始检索

  • setMaxResult(int maxResults): 设定一次最多检索出的对象的数目. 在默认情况下, Query 和
    Criteria 接口检索出查询结果中所有的对象

这里写图片描述

检索单个对象

这里写图片描述

绑定参数的形式,按参数名称绑定

这里写图片描述

绑定参数的形式,按参数位置绑定

这里写图片描述

在映射文件中定义命名查询语句

这里写图片描述

hibernate检索方式

这里写图片描述

HQL和QBC支持的各种运算

这里写图片描述

HQL和QBC支持的各种运算

这里写图片描述

迫切左外连接

这里写图片描述

HQL测试

单表

这里写图片描述

junit测试结果:
这里写图片描述


这里写图片描述

这里写图片描述


这里写图片描述

这里写图片描述

顺序查询

这里写图片描述

一对多

等值连接

这里写图片描述

这里写图片描述

迫切内连接

这里写图片描述

这里写图片描述

这里写图片描述

左外连接

这里写图片描述

这里写图片描述

迫切左外连接

这里写图片描述

这里写图片描述

在页面上显示cname,sname

采用迫切内连接可以做
这里写图片描述

这里写图片描述

这里写图片描述

迫切左外连接
这里写图片描述

多对多

这里写图片描述

总结

*  页面上数据的字段和数据库中字段差不多
    这个时候,采用迫切连接  结构比较好
*  如果页面上的字段很少,要按照需求加载数据,采用带构造函数的select查询
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值