昨天用hibernate-jpa(2.0)时发现一个问题,刚开始以为是查询sql和自己代码的bug。
经反复调试,发现native query不使用join的sql无异常。
使用join的sql如果同时取a,b两张表的id,会导致取出的值完全相同。
例如:
select a.id,b.id from tablea a ,tableb b where a.id=b.aid
查询出来的a.id和b.id的值是完全相同的(mysql里是肯定不一样的)。
但同样的hql使用createquery构造Query就一点问题没有,很是奇怪。
具体原因待查,特此记录下来,欢迎大家共同探讨。
另外,用createquery构造query时,hql中使用limit限制结果集大小是无效的。
需使用:
query.setFirstResult((pageNum-1)*pageSize);
query.setMaxResults(pageSize);
来限制结果集大小。
相关推荐
【Spring Hibernate JPA 项目样本】是一个典型的Java后端开发示例,它结合了Spring框架、Hibernate ORM工具和Java Persistence API(JPA)来构建数据库驱动的应用程序。这个项目展示了如何在实际开发中有效地整合这...
在描述中提到的“至今没有遇到什么问题”,可能意味着你选择了一个稳定且广泛测试过的驱动版本。 Hibernate是一款流行的ORM框架,它允许开发者使用面向对象的编程方式来操作数据库。Hibernate通过JDBC驱动与MySQL...
Hibernate是一个基于JPA规范的开源ORM框架,它不仅实现了JPA规范,还提供了许多超出JPA范围的高级功能。Hibernate以其强大的查询语言(HQL)、缓存机制以及高度的可配置性著称,使其成为Java领域中最受欢迎的持久化...
JPA(Java Persistence API),作为Sun官方提出的Java持久化规范,其核心目标在于为Java开发人员提供一个高效、统一的对象/关系映射(ORM)工具,以简化对关系型数据库的操作,尤其是在复杂的企业级应用中。JPA通过...
在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者使用面向对象的方式处理数据库操作。而JPA(Java Persistence API)是Java标准,为ORM提供了一个统一的API。当我们将Hibernate与JPA...
工作用了springmvc+jpa+spring这么长时间,这段时间正好有点时间就想整合一下,但在整合过程中遇到了各种问题,上网查了很多资料但讲的都很模糊或者是没有注释,在我一步一步的试验中终于整合成功了,做为我自已以后...
在使用Hibernate JPA进行数据操作时,我们可能会遇到一个特定的情况,即在执行完插入(insert)操作后,系统会自动执行一个`select last_insert_id()`的查询来获取刚刚生成的自增主键值。这个问题在Spring MVC集成...
整合JPA与Hibernate使得开发者可以专注于业务逻辑,而不是底层数据库操作,同时,由于Hibernate的广泛使用和社区支持,遇到问题时通常能找到丰富的解决方案。正确配置和使用这两个工具,可以大大提高Java应用的开发...
Hibernate作为JPA的一个实现,提供了更丰富的功能和更高的性能。在数据导入过程中,我们可以利用这两个框架的实体管理和事务控制能力,将Excel数据高效地持久化到数据库。 反射在导入Excel时的作用主要体现在以下几...
在使用Hibernate进行数据库操作时,可能会遇到MySQL数据库中文排序不正确的问题。这通常是由于字符集设置、数据库排序规则以及Hibernate的配置等因素导致的。本文将深入探讨如何解决这些问题,确保MySQL数据库中的...
在Hibernate中,当我们保存一个实体时,如果该实体与其他实体有关联关系(如一对多或多对一),那么可能遇到的问题是,尽管父实体被成功保存到了数据库中,但与其关联的对象却没有被一起保存。 **解决方案:** 1. *...
此异常表明在配置`EntityManagerFactory`时遇到了问题,可能是由于配置文件(如`persistence.xml`)中的错误,或者是依赖的JPA提供者(如Hibernate)版本不兼容。检查配置文件的正确性和所有依赖库的版本一致性。 #...
**"J2EE问题(关于hibernate和JPA).txt"** 文件可能包含了开发者在实际项目中遇到的问题,这些问题可能涉及到JPA和Hibernate的集成,事务管理,性能调优等。在J2EE环境中,JPA和Hibernate可以很好地与Servlets, ...
这是一个基于Java技术栈的Web应用实战项目,使用了Spring MVC、JPA、Hibernate以及Jquery UI等技术。本文将详细解析这些技术的核心概念及其在项目中的应用。 首先,Spring MVC是Spring框架的一部分,是一个用于构建...
Hibernate Tools 是一个强大的开发工具,它为Hibernate ORM框架提供了丰富的集成开发环境支持,包括逆向工程(从数据库生成实体类)、代码生成、JPA支持以及HQL和SQL查询的调试等。要运行或修改Hibernate Tools的...
3. **Hibernate ORM**: Hibernate是JPA的一个实现,提供了更丰富的功能,如二级缓存、查询语言HQL(Hibernate Query Language)和 Criteria API。在Spring中,我们可以使用Hibernate的JPA供应商来配置和使用...
Hibernate作为JPA的一个实现,提供了更丰富的功能和更好的性能。 **1. 安装与配置** 在项目中使用Hibernate JPA,首先需要将其依赖添加到项目的构建文件中,如Maven的pom.xml或Gradle的build.gradle。之后,配置...