Hibernate的查询的方式

本文详细介绍了Hibernate提供的五种查询方式,包括OID查询、对象导航检索、HQL检索、QBC检索和SQL检索。每种方式都有详细的示例代码,帮助读者理解如何在Hibernate中进行高效的数据查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hibernate的查询的方式

在Hibernate中提供了很多种的查询的方式。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的排序查询

 

 

HQL的条件查询

 

 

HQL的投影查询

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

 

 

HQL的分页查询

 

 

HQL的分组统计查询

 

 

HQL的多表查询

l  SQL的多表查询

n  连接查询

u  交叉连接:笛卡尔积

select * from A,B;

u  内连接    :inner join (inner 可以省略)

l  隐式内连接:

select * from A,B where A.id = B.aid;

l  显示内连接:

select * from A inner join B on A.id = B.aid;

u  外连接    :

l  左外连接:left outer join(outer 可以省略)

select * from A left outer join B on A.id= B.aid;

l  右外连接:right outer join(outer 可以省略)

select * from A right outer join B on A.id = B.aid;

n  子查询

 

l  HQL的多表查询

n  连接查询

u  交叉连接

u  内连接

l  显示内连接

l  隐式内连接

迫切内连接

u  外连接

l  左外连接

l  右外连接

迫切左外连接

 

 

 

Hibernate的查询方式:QBC检索

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

 简单查询

 

 

 排序查询

 

 

分页查询

 

 

条件查询

 

 

统计查询

 

 

离线条件查询(SSH)---DetachedCriteria

 

 

 

Hibernate的查询方式:SQL检索

SQL查询

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

 

转载于:https://www.cnblogs.com/tc6666/p/9729782.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值