Hibernate学习04

Hibernate学习04

(这是在学习Hibernate整理的笔记。)
Hibernate学习01
Hibernate学习02
Hibernate学习03

4.1 Hibernate的查询的方式

在Hibernate中提供了很多种的查询的方式。Hibernate共提供了五种查询方式。

4.1.1 Hibernate的查询方式:OID查询

OID检索:Hibernate根据对象的OID(主键)进行检索

4.1.1.1 使用get方法

Customer customer = session.get(Customer.class,1l);

4.1.1.2 使用load方法

Customer customer = session.load(Customer.class,1l);

4.1.2 Hibernate的查询方式:对象导航检索

对象导航检索:Hibernate根据一个已经查询到的对象,获得其关联的对象的一种查询方式。

4.1.3 Hibernate的查询方式:HQL检索

HQL查询:Hibernate Query Language,Hibernate的查询语言,是一种面向对象的方式的查询语言,语法类似SQL。通过session.createQuery(),用于接收一个HQL进行查询方式。

4.1.3.1 初始化一些数据

4.1.3.2 HQL的简单查询

4.1.3.3 HQL的别名查询

4.1.3.4 HQL的排序查询

4.1.3.5 HQL的条件查询

4.1.3.6 HQL的投影查询

投影查询:查询对象的某个或某些属性。

4.1.3.7 HQL的分页查询

4.1.3.8 HQL的分组统计查询

4.1.3.9 HQL的多表查询
  • SQL的多表查询
  • HQL的多表查询

4.1.4 Hibernate的查询方式:QBC检索

QBC查询:Query By Criteria,条件查询。是一种更加面向对象化的查询的方式。

4.1.4.1 简单查询

4.1.4.2 排序查询

4.1.4.3 分页查询

4.1.4.4 条件查询

4.1.4.5 统计查询

4.1.4.6 离线条件查询(SSH)—DetachedCriteria

4.1.5 Hibernate的查询方式:SQL检索

4.1.5.1 SQL查询

SQL查询:通过使用sql语句进行查询

4.2 Hibernate的抓取策略(优化)

4.2.1 延迟加载的概述

4.2.1.1 什么是延迟加载

延迟加载:lazy(懒加载)。执行到该行代码的时候,不会发送语句去进行查询,在真正使用这个对象的属性的时候才会发送SQL语句进行查询。

4.2.1.2 延迟加载的分类

4.2.2 抓取策略

4.2.2.1 抓取策略的概述
  • 通过一个对象抓取到关联对象需要发送SQL语句,SQL语句如何发送,发送成什么样格式通过策略进行配置。
    A:通过或者上通过fetch属性进行设置
    B:fetch和这些标签上的lazy如何设置优化发送的SQL语句
4.2.2.2 < set >上的fetch和lazy

4.2.2.3 < many-to-one >上的fetch和lazy

4.2.3 批量抓取

4.2.3.1 什么是批量抓取

一批关联对象一起抓取,batch-size

4.2.3.2 测试批量抓取

Hibernate学习04 END!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值