前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Hibernate查询方式之:HQL查询(需要使用的类是:Query)

Hibernate查询方式之:HQL查询(需要使用的类是:Query)

作者头像
全栈程序员站长
发布于 2022-06-30 02:25:09
发布于 2022-06-30 02:25:09
9130
举报

hibernate查询方式之:HQL查询方式: HQL语句正对的是实体类的名称和实体类的属性进行操作 1.查询所有 格式:from 实体类名称 Query query = session.createQuery(“from User”); List<User> list = query.list(); for(User u :list){ System.out.println(u); } 2.条件查询 (1)from 实体类名称 where 实体类的属性名称=?; Query query = session .createQuery(“from User u where u.name=? and u.id=?”); //给?赋值,一般从0开始 query.setParameter(0,”kevin”); query.setParameter(1,12);//表示name=kevin;id=12的数据信息 List<User> list = query.list(); (2)模糊查询: 格式:from 实体类名称 where 实体类属性名称 like ? ; Query query = session.createQuery(“from User u where u.name like ?); query.setParameter(0,k_);//以k开头,并且只有两个字母的数据信息 //query.setParameter(0,”%k%”); List<User> list = query.list(); 3.排序查询 使用关键字 order by 格式:from 实体类名称 order by 实体类属性名称 asc/desc //asc:升序 ;desc:降序 Query query = session.createQuery(“from User u order by u.id asc”); List<User> list = query.list(); 4.分页查询: 在mysql中分页查询方式: select * from t_user limit 0,3;//从0开始,每页显示数据为3条 在hibernate中如何使用分页查询? //先查询所有 Query query = session.createQuery(“from User”); //设置开始查询位置 query.setFirstResult(0); //设置每页查询的数据 query.setMaxResult(3); List<User> list = query.list(); 5.投影查询:就是查询部分,所有在泛型中要写Object类型 格式:select 实体类属性名称 from 实体类名称; 注意:不能使用* ;不支持这个*写法; Query query = session.createQuery(“select u.name from User u”); List<Object> list = query.list(): 6.聚合函数查询 count avg sum max min 格式: select 聚合函数 from 实体类名称 Query query = session.createQuery(“select count(*) from User”); //调用的是uniquenResult()方法 //返回的是Object //要转成成int类型,先强制转换成Long类型,在通过intValue()方法转换成Int方法 Object count = query.uniquenResult(); Long num = (Long)count int number = num.intValue(); System.out.println(number); 补充: 在mysql中聚合函数的使用: 1) COUNT SELECT COUNT(*) FROM emp; –> 计算emp表中所有列都不为NULL的记录的行数 SELECT COUNT(comm) FROM emp; –> 云计算emp表中comm列不为NULL的记录的行数 如果行数里面的内容全部为空,那么不计数了。

2) MAX SELECT MAX(sal) FROM emp; –> 查询最高工资

3) MIN SELECT MIN(sal) FROM emp; –> 查询最低工资

4) SUM SELECT SUM(sal) FROM emp; –> 查询工资合

5) AVG SELECT AVG(sal) FROM emp; –> 查询平均工资

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100808.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Hibernate HQL查询
Hibernate Query Language(HQL)是Hibernate框架中使用的一种面向对象的查询语言。它类似于SQL,但更关注对象和实体的属性而不是表和列。HQL允许您在不依赖特定数据库的情况下执行查询操作,并提供了一种强大而灵活的方式来检索、操作和管理持久化对象。
堕落飞鸟
2023/05/16
8100
Hibernate对象导航语言
文章目录 1. HQL - 对象导航语言 1.1. 简介 1.2. 步骤 1.3. 准备 1.4. 实体查询 1.4.1. 格式 1.4.2. 拓展 1.4.3. 实例 1.5. 部分字段的查询 1.5.1. 格式 1.5.2. 实例 1.6. 多表联合查询 1.7. 前提 1.7.1. 常见的联合查询方式 1.7.2. 对象方式关联查询 1.7.2.1. 实例 1.7.3. join方式查询 1.7.3.1. 左外连查询 1.7.3.1.1. 格式 1.7.3.1.2. 实例 1.7.3.2. 右外连
爱撒谎的男孩
2019/12/31
9120
Hibernate查询方式
load它不会去立刻查询而是生成一个代理对象由于没有去查询它只包含你给的OID,直到你用到其他属性才会去查询给你
木瓜煲鸡脚
2019/09/17
8460
Hibernate查询方式
Hibernate第四天:Hibernate的查询方式、抓取策略
在Hibernate中提供了很多种的查询的方式。Hibernate共提供了五种查询方式。
AlbertYang
2020/09/08
1.7K0
Hibernate第四天:Hibernate的查询方式、抓取策略
Hibernate查询技术之HQL语句
1、session中的get( )和load( )方法来查询对象。但其查询功能有限。
大黄大黄大黄
2018/09/14
1.6K0
Hibernate框架HQL语句
这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利。 在这里通过定义了三个类,Special、Classroom、Student来做测试,Special与Classroom是一对多,Classroom与Student是一对多的关系,这里仅仅贴出这三个bean的属性代码: Special类: public class Special { private int id; private String name; private String type; private S
二十三年蝉
2018/02/28
1.1K0
Hibernate_day03总结
Hibernate_day03总结 今日内容 l Hibernate的检索方式 l Hibernate的抓取策略 l Hibernate的批量检索 l 事务的并发问题 1.1 上次课内容回顾: Hibernate的持久类三种状态: * 瞬时态:没有唯一标识OID,没有被session管理 * 持久态:有唯一标识OID,被session管理 * 脱管态:有唯一标识OID,没有被session管理. * 状态转换: 瞬时态:new 获得. * 瞬时à持久:save/saveOrUpdate * 瞬时à脱管:
Java帮帮
2018/03/19
1.1K0
Hibernate_day03总结
Hibernate检索1
Hibernate 的关联关系,通过关联关系能够对数据库表进行简单的操作。在大多数应用中,查询属于最重要的部分,而目前我们只能使用get方法和 load方法进行简单的查询,本章将主要讲解Hibernate的查询操作。
用户9184480
2024/12/19
1010
Hibernate HQL详解
HQL(Hibernate Query Language) 是Hibernate框架提供的一种查询机制,它和 SQL 查询语言很相似。不同的是HQL是面向对象的查询语言,让开发者能够以面向对象的思想来编写查询语句,对Java编程来说是很好的一种方式。
南风
2019/04/22
2.4K0
Hibernate HQL详解
SSH框架之旅-hibernate(4)
QBC 查询是通过 Restrictions 类的静态方法来实现的,具体的方法如下表所示。
Wizey
2018/08/30
1.7K0
SSH框架之旅-hibernate(4)
Hibernate的条件查询的几种方式
1、 第一种,用?占位符,如: //登录(用?占位符) public List<UserPO> LoginUser(UserPO up)throws Exception{ Session se
ydymz
2018/09/10
1.8K0
Hibernate学习---单表查询
我们都知道SQL是非常强大的,为什么这么说呢?相信学过数据库原理的同学们都深有体会,SQL语句变化无穷,好毫不夸张的说可以实现任意符合我们需要的数据库操作,既然前面讲到Hibernate非常强大,所以Hibernate也是能够实现SQL的一切数据库操作。 在SQL中,单表查询是最常用的语句,同理Hibernate最常用到的也是查询语句,所以今天就来讲讲Hibernate的单表查询: 今天要将的内容分以下几点: 查询所有 查询结果排序 为查询参数动态赋值 分页查询 模糊查询 唯一性查询 聚合函数查询 投影查询
MindMrWang
2018/04/16
1.2K0
Hibernate学习---单表查询
HQL(Hibernate Query Language)查询语句的基础用法
HQL(Hibernate Query Language)是一种面向对象的查询语言,它是由Hibernate团队开发的。它与SQL类似,但是操作的是对象而不是关系数据库表中的记录。这意味着,使用HQL可以方便地对对象进行查询,而不必写复杂的SQL语句。
鳄鱼儿
2024/05/21
7540
《Java从入门到放弃》框架入门篇:hibernate查询——HQL
不知不觉又到了hibernate的最后一篇了,只感觉时光飞逝~,岁月如梭~! 转眼之间,我们就···························,好吧,想装个X,结果装不下去了,还是直接开始吧· 前面我们已经把hibernate中添加、删改、修改和根据ID得到对象的方法都学习了,但如何才能查询出多条记录呢?比如我想查询所有姓黄的作者,查询标题包含“中”字的博客等。这一篇就来介绍查询。 hibernate有两种检索(查询)数据的方式,分别是HQL(Hibernate Query Language)和QBC
十方上下
2018/06/14
8490
HQL查询语句
HQL查询 hql基本查询 单属性和多属性查询 List<Object[]> list = session.createQuery("select name,code from Province").list(); for (int i = 0;i<list.size();i++){ Object[] arr = list.get(i); for (int j = 0;j <arr.length;j++){
微醺
2019/01/17
7880
Hibernate【查询详解、连接池、逆向工程】
前言 在Hibernate的第二篇中只是简单地说了Hibernate的几种查询方式….到目前为止,我们都是使用一些简单的主键查询阿…使用HQL查询所有的数据….本博文主要讲解Hibernate的查询操
Java3y
2018/03/15
1.3K0
Hibernate【查询详解、连接池、逆向工程】
hibernate 检索方式[通俗易懂]
HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. 它有例如以下功能:
全栈程序员站长
2022/07/08
9990
hibernate 检索方式[通俗易懂]
【框架】[Hibernate]构架知识点常见操作
配置文件、JavaBean、HibernateSessionFactory等代码,请看上一篇: 【框架】[Hibernate]构架知识点详解入门与测试实例
谙忆
2021/01/21
6900
常用的Hql语句
1 // HQL: Hibernate Query Language. 2 // 特点: 3 // >> 1,与SQL相似,SQL中的语法基本上都可以直接使用。 4 // >> 2,SQL查询的是表和表中的列;HQL查询的是对象与对象中的属性。 5 // >> 3,HQL的关键字不区分大小写,类名与属性名是区分大小写的。 6 // >> 4,SELECT可以省略. 7
shirayner
2018/08/10
7460
Hibernate HQL 语句
import java.util.Iterator; import java.util.List; import java.util.Map;
Hongten
2018/09/18
6300
相关推荐
Hibernate HQL查询
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文