hibernate重大BUG
HQL:
select t.objid
from T01VPeople t
where 1 != 1
or (t.t01Peoplemodel.propertyname = 'hotel_city' and
t.objlong in (select tree.ptid
from T01Propertytree tree
where tree.treename like '%上海%'))
or (t.t01Peoplemodel.propertyname = 'hotel_name' and
t.objstringhit like '%龙东%'))
group by t.objid
having count(t.objid) = 2
Hibernate转换成sql:
select
t01vpeople0_.OBJID as col_0_0_
from
T01_V_PEOPLE t01vpeople0_,
T01_PEOPLEMODEL t01peoplem1_
where
t01vpeople0_.OMID=t01peoplem1_.OMID
and (
1<>1
or t01peoplem1_.PROPERTYNAME='hotel_city'
and (
t01vpeople0_.OBJLONG in (
select
t01propert2_.PTID
from
T01_PROPERTYTREE t01propert2_
where
t01propert2_.TREENAME like '%上海%'
)
)
or t01peoplem1_.PROPERTYNAME='hotel_name'
and (
t01vpeople0_.OBJSTRINGHIT like '%龙东%'
)
)
正确语句:
select
t01vpeople0_.OBJID as col_0_0_
from
T01_V_PEOPLE t01vpeople0_,
T01_PEOPLEMODEL t01peoplem1_
where
t01vpeople0_.OMID=t01peoplem1_.OMID
and (
1<>1
or t01peoplem1_.PROPERTYNAME='hotel_city'
and (
t01vpeople0_.OBJLONG in (
select
t01propert2_.PTID
from
T01_PROPERTYTREE t01propert2_
where
t01propert2_.TREENAME like '%上海%'
)
)
or t01peoplem1_.PROPERTYNAME='hotel_name'
and (
t01vpeople0_.OBJSTRINGHIT like '%龙东%'
)
)
group by t01vpeople0_.OBJID having count(t01vpeople0_.OBJID) =2
--------------------------------------------------------------------------
ORM: T01VPeople <-->T01_V_PEOPLE T01Peoplemodel <--> T01_PEOPLEMODEL
关联 :T01_V_PEOPLE.omid <--> T01_PEOPLEMODEL.omid
分享到:
相关推荐
这个案例是根据分组查询,并且得到每组的条数,不懂得可以q我:1710086675,欢迎认识更多新朋友
然而,有时候在使用Hibernate的过程中,可能会遇到一些问题,比如由JBoss Tools生成的XML文件出现bug。这个问题可能涉及到多个方面,包括XML文件的语法错误、配置错误或者是工具自身的兼容性问题。下面将详细探讨...
标题与描述均提到了“Hibernate Synchronizer 插件重大缺陷改正”,这表明文章或讨论主要聚焦于解决在使用Hibernate Synchronizer插件时遇到的关键问题。Hibernate Synchronizer插件通常用于同步数据库操作,例如在...
NULL 博文链接:https://imp9527.iteye.com/blog/438677
4. **实体状态异常**: Hibernate在操作实体时会根据其生命周期状态进行处理,如果出现“ detached entity passed to persist”之类的错误,可能是因为实体状态管理不当。确保在操作实体前正确处理其状态(如merge、...
在Java SE环境中使用Hibernate处理数据是一项常见的任务,尤其是在开发企业级应用时,需要对数据库进行高效、灵活的管理和操作。Hibernate作为一个流行的Object-Relational Mapping(ORM)框架,能够简化Java程序员...
### 详解Hibernate事务处理机制 #### 一、引言 Hibernate作为一款优秀的对象关系映射(ORM)框架,在Java开发领域扮演着极其重要的角色。它不仅简化了数据持久化的复杂性,还提供了一系列强大的功能来支持高效的...
在Java开发中,尤其是涉及到大数据量的处理时,人们往往会质疑ORM框架,如Hibernate,是否适合进行批量数据操作。然而,实际上,通过适当的技术手段,我们可以有效地解决Hibernate在批量处理时可能出现的性能问题。...
【标题】"Hibernate做的留言板" 是一个基于Java的Web应用程序,使用了流行的持久化框架Hibernate来处理数据库交互。这个项目提供了完整的源代码,方便开发者直接在Eclipse集成开发环境中运行和学习。它不仅是一个...
在本文中,我们将深入探讨Hibernate的事务处理机制以及`flush`方法的用法,并分析为何在某些场景下会出现特定的异常。 首先,我们需要了解Hibernate中的事务处理。在Java应用中,事务通常与SessionFactory和Session...
对于MyEclipse项目,可能需要在`.project`文件中添加Hibernate的nature,确保能够正确识别和处理Hibernate相关操作。如果遇到错误,例如配置错误导致browse无法选择正确的项目目录,可能需要手动修改`.project`文件...
Hibernate 的主要特点是:支持多种数据库管理系统、提供了高效的数据访问机制、支持事务处理和缓存机制等。 Hibernate 环境搭建 要使用 Hibernate,首先需要搭建 Hibernate 的开发环境。下面是 Hibernate 环境搭建...
Hibernate存储Clob字段的方式总结涉及了在Java开发中...在实际开发中,可以根据需求选择使用String直接映射Clob的方式或者使用Clob类型处理方式,并注意Hibernate session的创建和管理方法,以保证代码的简洁性与效率。
本教程主要聚焦于Hibernate中的事务并发处理,包括悲观锁和乐观锁两种策略,这对于我们理解如何在高并发环境中确保数据的一致性和完整性至关重要。 首先,事务是数据库操作的基本单元,它确保一组操作要么全部成功...
Hibernate是Java平台上的一款开源对象关系映射(ORM)框架,它允许开发者用面向对象的方式处理数据库操作。在SSH(Spring、Struts、Hibernate)框架中,Hibernate作为持久层的解决方案,极大地简化了数据库操作的...
Hibernate作为一款流行的Java持久层框架,提供了一种非常便捷的方式来处理这些问题。本文将详细介绍如何利用Hibernate进行多表联合查询,并通过一个具体的例子来展示其强大功能。 #### 二、多表联合查询概述 多表...
- **简化开发**: Hibernate 大大减少了开发者处理复杂 SQL 查询的工作量,使得数据库操作更加直观。 - **提高效率**: 通过缓存机制、懒加载等技术,Hibernate 可以有效提高应用程序性能。 - **增强可维护性**: 采用 ...
总结来说,Hibernate-Extensions是Hibernate的一个强大补充,它扩展了ORM的功能边界,使开发者能够更高效、更灵活地处理数据库操作。无论你是初学者还是经验丰富的开发者,这个完整的安装包都值得你拥有,因为它将为...
了解事务的ACID特性以及如何在Hibernate中处理事务,可以确保数据的一致性。 7. **一对多、多对一、多对多关联映射**: Hibernate 支持各种关联映射,如一对一、一对多、多对一和多对多。理解这些关联关系的建立和...
例如,从Hibernate 2.0到4.0, Hibernate经历了从简单的对象关系映射到支持 Criteria 查询、JPA规范、HQL(Hibernate查询语言)改进等多个重大变革。 在实际开发中,使用“达梦Hibernate方言2.0至4.0”可以确保你的...