“硬伤”系列已经是炒得烂熟了,所以取这样的名字也是有点怕怕;不过在行业内混了几年,最近看花前柳下的文章少了,发现竟然取不出更好的名字,将就吧,呵呵。
以前用HQL比QBC多,网上都说QBC功能比HQL少,我也一直有这个感觉,但是从来没有总结过:QBC到底比HQL差在哪里呢?最近实现DAS标准,终于“全面”总结了一把。
1)一定要在HBM中有关联,才能用到关联的对象的属性。如果没有关联,就只能用本对象的简单属性。
如果A和B对象没有关联,是不能一起查询的。HQL就没有这个缺点。
2)如果有projection,关联一定要取别名。
3)别名一定不能和 HBM配置的关联属性名称相同。说起来也有道理,为什么要取个和自己名称相同的别名呢?但是....为什么就不可以呢?
4)如果主对象和从对象的有相同的属性,那么在criterion中,使用主对象可以直接写属性名称,使用从对象一定要用 关联的属性的别名(用原名是不可以的哦)。
5)如果主对象和从对象的有相同的属性,那么在projection中,使用主对象可以直接写属性名称,使用从对象一定要用 关联的属性的别名(用原名是不可以的哦)。
6)如果主对象和从对象的有相同的属性,那么在order中,使用主对象可以直接写属性名称,使用从对象一定要用 关联的属性的别名(用原名是不可以的哦)。
呵呵,不用怀疑,说的就是hibernate的最新的3.2版的QBC。不过HQL也有个比较严重的问题:必须传入数据类型;还好的是,我们已经从sessionFactory的cache中,取到了数据类型了。
分享到:
相关推荐
QBC,全称为Query By Criteria,是Java世界中一种基于对象的查询方式,主要用于简化Hibernate框架中的数据查询操作。QBC提供了一种面向对象的方式来构建查询条件,与SQL语句相比,它更易于理解和维护,尤其在处理...
这种方式极大地提高了代码的可读性和可维护性,同时也使得查询逻辑更加灵活多变。 #### 二、QBC比较运算符详解 QBC支持多种比较运算符,每种运算符都有其特定的用途和应用场景。下面将详细介绍这些比较运算符以及...
**QBC(Query By Example)**是Hibernate框架中的一种查询方式,它...熟练掌握QBC,能极大地提升开发效率,尤其在处理不确定的查询条件时。在实际项目中,应结合QBC与其他查询方式,灵活运用,以满足不同场景下的需求。
根据提供的文件信息,我们可以推断出此文档主要讨论了QBC(Query By Criteria)查询方法在Hibernate框架中的应用。下面将对文档中的几个关键点进行详细的解析与扩展。 ### QBC查询简介 QBC(Query By Criteria)是...
Hibernate是一个Java开发中的持久化框架,它极大地简化了数据库操作,使得开发者能够更加专注于业务逻辑,而不是底层的数据存取细节。本资源“Hibernate QBC高级查询”聚焦于Hibernate Query by Criteria(QBC)的...
QBC的相关讲义和例题 QBC(Query By Criteria)查询方式是Hibernate提供的“更加面向对象”的一种检索方式。QBC在条件查询上比HQL查询更为灵活,而且支持运行时动态生成查询语句。
本篇将详细介绍如何使用Hibernate的Query By Criteria (QBC)方式进行分页查询。 首先,我们需要了解QBC的基本概念。QBC是Hibernate提供的一种基于对象的查询方式,与HQL(Hibernate Query Language)类似,但更接近...
理解并熟练掌握这两种查询条件的使用,能够极大地提高开发效率,使得在处理数据库操作时更加游刃有余。在实际项目中,根据需求选择合适的查询方式,可以优化查询性能,提高代码的可读性和维护性。
Hibernate(HQL、QBC查询)源码 Hibernate(HQL、QBC查询)源码 Hibernate(HQL、QBC查询)源码 Hibernate(HQL、QBC查询)源码 Hibernate(HQL、QBC查询)源码
标题"Hibernate_QBC和Hibernate_QBE"提及了两个关于Hibernate的查询方式,即Query By Criteria(QBC)和Query By Example(QBE)。Hibernate是Java领域中一个广泛使用的对象关系映射(ORM)框架,它允许开发者以面向...
收录了QBC_hibernate完整用法.大家可以下载看看.作为参考.
// 1.查询所有 // 2.条件查询 // 3.模糊查询 // 4.范围查询 // 5.排序查询(order by) // 6.分页查询 // 7.投影查询(只获取部分字段的结果) // 8.聚集函数使用(聚合函数)(count、sum、avg、max、min等) ...
在Java开发领域,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。本篇文章将深入探讨Hibernate中的QBC(Query By Example)条件查询与传统的HQL(Hibernate Query Language)查询的...
QBC(Query By Example)和QBE(Query By Example)是两种在ORM(Object-Relational Mapping)框架中,特别是Hibernate中使用的查询方法。这两种查询方式都是为了简化SQL语句的编写,使得开发者能更专注于业务逻辑,...
HQL允许开发者以类和对象的方式编写查询,支持复杂的查询结构,如连接、子查询、聚合函数等,极大地提高了代码的可读性和可维护性。 3. QBC(Query By Criteria):QBC是另一种在Hibernate中进行数据查询的方法,它...
### Java QBC 常用方法详解 在Java开发中,Query ...以上就是Java QBC中常用的查询条件方法,这些方法提供了丰富的功能,可以满足大部分场景下的查询需求。熟练掌握这些方法可以帮助开发者更高效地进行数据查询操作。
在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者使用面向对象的方式来操作数据库,极大地简化了数据库操作。本教程将深入探讨Hibernate中的两种查询方式:HQL(Hibernate Query ...
IEEE Std 802.1Qbc-2011是一项由电气和电子工程师协会(IEEE)计算机学会所支持的标准,具体由局域网/城域网标准委员会(LAN/MAN Standards Committee)赞助。这项标准是《IEEE 802.1Q-2011 媒体访问控制(MAC)桥接...
根据提供的文件信息,以下是关于KPTD-3216QBC-D发光二极管的知识点汇总: 1. 产品型号和概述:KPTD-3216QBC-D是一种发光二极管(LED),属于Kingbright品牌的今台系列。该型号的LED具有球头1206的封装形式。 2. 发光...