`
mxl86
  • 浏览: 174810 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hibernate主外键查询的好处

阅读更多

今天在做项目的时候,由于项目数据表用到了主外键约束,查询的时候页面上怎么也显示不出来,经过同事的指导,最后搞定。

 

下面是我总结的东西:

 

数据表的映射文件,在外键的代码里加上 lazy="false" 属性,dao里直接查询一个主表就行.由于我用的是实体,页面上直接写该实体的属性就可以显示出结果了。

 

hibernate在执行的时候其实是执行了2条sql语句

 

Hibernate: select adminuser0_.ID as ID32_, adminuser0_.FK_ROLE_ID as FK2_32_, adminuser0_.USER_NAME as USER3_32_, adminuser0_.USER_PASSWORD as USER4_32_, adminuser0_.USER_NUMBER as USER5_32_, adminuser0_.USER_TRUENAME as USER6_32_, adminuser0_.USER_DEPT as USER7_32_ from HBJXC.ADMINUSER adminuser0_


Hibernate: select role0_.ROLE_ID as ROLE1_33_0_, role0_.ROLE_NAME as ROLE2_33_0_, role0_.ROLE_CODE as ROLE3_33_0_, role0_.INPUT_DATE as INPUT4_33_0_, role0_.ORDER_ID as ORDER5_33_0_ from HBJXC.ROLE role0_ where role0_.ROLE_ID=?

 

2
0
分享到:
评论
2 楼 mxl86 2009-11-02  
lou 写道

把延迟加载设为false是不是不大好啊
如果关联的表多是不是会一起执行一些没用的查询语句会影响运行速度?


可以使用二级缓存来解决这个问题……
1 楼 lou 2009-06-22  

把延迟加载设为false是不是不大好啊
如果关联的表多是不是会一起执行一些没用的查询语句会影响运行速度?

相关推荐

    hibernate基于主外键的一对多/多对一关联

    "hibernate基于主外键的一对多/多对一关联"是Hibernate中两个核心的概念,用于描述实体之间的关系。下面将详细阐述这两个关联类型及其实现方式。 一对多关联是指在数据库中,一个表的记录可以与另一个表中的多个...

    Hibernate基于外键的一对多单向关联

    “Hibernate基于外键的一对多单向关联”这个标题指的是在Java持久化框架Hibernate中,如何通过外键实现一个实体类(如订单)与另一个实体类(如商品)之间的一对多关系,并且这种关联是单向的,即从订单端可以访问到...

    Hibernate期末作业一对多(主外键)

    【标题】"Hibernate期末作业一对多(主外键)"涉及的是关系数据库设计与Java持久化框架Hibernate的应用,特别是关于一对多关联关系的实现。在数据库设计中,一对多关联是指一个实体(如表)可以对应多个其他实体,而...

    主外键的配置

    下面将详细解释给定文件中提到的四种不同类型的Hibernate主外键配置。 1. **单主键、无外键配置** 在这种配置中,一个实体类只有一个主键属性。例如,`BadCodeBean`实体只有一个`badCode`字段作为主键。配置中使用...

    Hibernate的缓存级联查询

    外键映射是通过在主表映射文件中使用`one-to-one`元素,而从表映射文件中使用`many-to-one`元素来实现。主键映射则是两个实体类的主键相互关联,这需要在`one-to-one`节点上设置`constrained`属性为`true`,以表明...

    SSH2+JSO与三表联合主外键

    综上所述,SSH2+JSON的结合提供了强大的后端服务支持,能够有效地处理复杂的数据库操作,包括主外键和联合主键的设定,同时也方便了与Android客户端的数据交换。在三表联合主键的设计中,需注意保证数据的完整性和...

    Hibernate关联映射-one to one单向外键关联

    对应的,在`Account.hbm.xml`文件中,我们不需要做任何特别的配置,因为一对一关联默认认为对方是主表,本表为从表,外键存在于从表中。如果需要在`Account`表中也添加外键约束,可以使用`inverse="true"`属性,这样...

    Hibernate房屋数据库自写

    Hibernate数据库详细明写,此数据库主外键自增列明写清楚楚,更明白如何配置文件

    Hibernate关联关系练习【全】

    在Hibernate中,基本查询可以通过Session的createCriteria()或createQuery()方法进行,还可以使用HQL(Hibernate Query Language)或JPQL(Java Persistence Query Language),它们类似SQL但更面向对象。...

    hibernate多表查询[定义].pdf

    在本案例中,我们关注的是Hibernate中的多表查询,这是在处理复杂数据关系时常见的需求。 多表查询涉及到了三个或更多的表之间的关联,这在现实世界的业务场景中很常见,如学生信息与班级信息的关联。在Hibernate中...

    利用hibernate自动生成hbm.xml文件和entity类.doc

    7. 处理主外键关系:如果存在主外键关系,可以选择 Include,将主外键关系包括在生成的文件中。 8. 完成反转:点击 Finish,完成反转过程。 三、 生成的文件解释 在反转过程完成后,将生成以下文件: * Entity 类:...

    hibernate-orm-master.zip

    Hibernate提供延迟加载机制,当对象的关联属性未在查询中明确加载时,只有在真正访问该属性时才会触发数据库查询。而立即加载则会在加载主对象时同时加载关联对象,这需要根据实际场景选择合适策略。 九、性能优化 ...

    Hibernate 手册 第一章 Hibernate入门

    接着,配置Hibernate的主配置文件`hibernate.cfg.xml`,包括数据库连接信息、方言设置等。同时,还需要为实体类创建映射文件(通常是`.hbm.xml`),定义对象与表之间的映射关系。 3. 实体类与映射文件 在Hibernate...

    hibernate框架基础教程适合新手

    开始学习Hibernate前,你需要安装JDK、设置环境变量,下载Hibernate库,并在项目中配置Hibernate的主配置文件`hibernate.cfg.xml`,包括数据库连接信息、方言选择等。 3. **实体类与映射文件** Hibernate通过XML...

    hibernate学习总结文档

    2. **读取(Read)**:`get()` 或 `load()` 方法用于根据主键获取对象,`query()` 或 HQL(Hibernate 查询语言)用于执行更复杂的查询。 3. **更新(Update)**:修改对象后,调用 `update()` 或 `merge()` 方法同步...

    Hibernate教程04_关系映射之一对一单向外键关联

    在Hibernate中,一对一关系有多种实现方式,包括单向和双向关联,以及外键在主表还是从表等不同形式。 **压缩包子文件的文件名称列表:s2sh_relation01_one2one_uni_fk** 这个文件名暗示了这是一组基于Spring、...

    hibernate-distribution中文帮助手册

    6. **查询语言HQL**:Hibernate特有的面向对象的查询语言,类似SQL,但操作对象而非表。 7. **Criteria API**:另一种进行对象查询的方法,提供了更动态、更灵活的查询构造方式。 8. **Criteria与DetachedCriteria...

    Hibernate反向工程

    7. **操作数据库**:生成的实体类可以配合Hibernate Session接口进行CRUD(创建、读取、更新、删除)操作,例如,使用Session的save()、get()、update()、delete()方法,以及Query和Criteria API进行更复杂的查询。...

    hibernate多对多关联映射

    在Hibernate中,这种关系需要通过中间表(也称为关联表或连接表)来实现,它通常包含两个外键,分别引用两个参与关联的实体。 二、配置多对多关联 1. 实体类标注 在Java实体类中,我们需要使用`@ManyToMany`注解来...

Global site tag (gtag.js) - Google Analytics