`
Wind_ZhongGang
  • 浏览: 263720 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Hibernate ORM

阅读更多

 

  Hibernate ORM (Hibernate Object Relationship Mapping), Hibernate处理对象关系映射时,对于对象间关联关系的方式主要有三种,分别是一对一(one-to-one),一对多(one-to-many),多对多(many-to-many),还有一种是多对一(many-to-one),但由于这与一对多只是方向相反,所以在这里认定一对多与多对一的处理方式是一致的;而对于对象间关联关系的方向有两种,一种是单向,另一种则是双向,单向意味着从一方实体能够查找到另一方实体,而反过来,从另一方实体则无法查找一方实体,双向则意味着不论是从一方还是另一方来看,都能从当前方实体查找到对方实体;对于对象间关联关系的实现方式有两种,一种是在某一方实体对应的数据表中添加外键用于标识两者之间的关联关系,如对于一对一的关联关系,会在某一方的数据表中添加一个外键标识符字段,用来保持两者的一对一关联关系,另一种就是将两方实体的关联关系独立出来一张关联关系表,用来保持两者的关联关系,如多对多关联关系,通常的做法是在数据库中建立第三张表,用来保持两者的多对多关联关系。所以对于不同的关联关系方式,不同的关联关系方向和不同的关联关系方向实现,在配置文件的书写和数据表的创建上会有所不同,基本上述三种关联关系的不同,进行组合,会产生出十二种不同的持久化实体间关联关系的实现方式,当然对于某一个特定的关联关系方向也会有一些特殊且优化的处理,后面会一一讲到。最后我还会对持久化实体间关于继承关系映射的配置与处理进行讲解。为了将重点放在持久化实体间关联关系的处理上,这里我会假定只有两个持久化实体,分别是Husband和Wife,而且它们都只有主键标识符和名字这两个简单的属性。不论对于哪种关联关系方式,都会使用这两个持久化实体来进行讲解,所以为了易于理解,你可以这样理解这些概念,对于一对一的关联关系,认为这是指代一夫一妻制,而对于一对多关联关系,认为这是一夫多妻或一妻多夫制,而对于多对多的关联关系来说,认为这是多夫多妻制。这并不代表现实中的需求,也不表示是对现实世界事物的完全反映,但我说过我在这里会将重点放在持久化实体间关联关系处理上,所以对于你的具体需求你可以参考这些选择最合适你项目需要的处理方式。在讲解每一种处理方式时,我都会附上这种方式的源代码,以及数据表和在添加数据时发出的sql语句截图来说明每一种方式的不同之处。 

分享到:
评论

相关推荐

    HibernateORM

    《Hibernate ORM》是由李晓军等作者编著的书籍,主要涵盖了使用Hibernate进行对象关系映射(ORM)的最佳实践。Hibernate作为Java领域广泛使用的ORM框架,它极大地简化了数据库操作,将面向对象的编程思想与关系型...

    Hibernate ORM - 一对一连接表关联关系

    "HibernateORM"这个文件名可能是包含示例代码、配置文件或教程文档的压缩包,可能包含以下内容: 1. Java实体类文件,展示了如何使用注解声明一对一关联。 2. Hibernate配置文件,显示了数据库连接和映射配置。 3. ...

    hibernate-orm-master.zip

    《Hibernate ORM:深入理解与应用》 Hibernate ORM(Object-Relational Mapping)是Java领域中最受欢迎的持久化框架之一,它提供了一种便捷的方式将Java对象映射到关系数据库,从而实现了对象-关系的解耦。...

    Hibernate ORM 新特性之 Service(Registry).

    在探讨Hibernate ORM的新特性——Service Registry之前,我们首先要理解Hibernate ORM的基本概念。Hibernate是一个流行的开源对象关系映射(ORM)框架,它允许开发者使用面向对象的编程语言(如Java)来处理数据库...

    Hibernate ORM - 一对多双向关联关系

    这个压缩包文件“HibernateORM”很可能包含了关于如何在实际项目中设置和使用Hibernate一对多双向关联的示例代码、配置文件或者详细教程。通过学习这些材料,开发者能够深入理解如何在Java应用中利用Hibernate来处理...

    Hibernate ORM 5.3.7.Final User Guide

    Hibernate ORM是一款为Java环境提供的对象/关系映射(Object/Relational Mapping, ORM)解决方案。它主要解决的问题是将对象模型表示的数据映射到关系数据库模型表示的数据,以及将Java数据类型映射到SQL数据类型。...

    Hibernate ORM - 一对多双向连接表关联关系

    "HibernateORM"可能是包含有关Hibernate ORM框架的详细信息的文件夹或压缩包,里面可能包含示例代码、教程文档或其他资源,用于辅助学习和理解Hibernate ORM的一对多双向关联。 **知识点详解:** 1. **Hibernate ...

    Hibernate orm 实现原理

    Hibernate orm 实现原理 主要讲解了关于hibernate 的一些知识

    Hibernate ORM - 一对多双向组合关联关系

    **标题解析:** "Hibernate ORM - 一对多双向组合关联关系" 这个标题表明我们要讨论的是Hibernate ORM框架中的...对于给定的压缩包文件"HibernateORM",读者可以通过解压后查看代码示例和文档,加深对这一主题的理解。

    Hibernate ORM 4.2.0 正式版

    Hibernate ORM 4.2.0 正式版的发布标志着Java ORM(对象关系映射)领域中一个重要的里程碑。Hibernate ORM,也就是Hibernate持久层框架,是一个开源的对象关系映射解决方案,允许开发者使用Java对象来代表数据库中的...

    Hibernate ORM 5.2.7.Final User Guide

    **Hibernate ORM 5.2.7.Final User Guide** Hibernate ORM是Java开发中广泛使用的对象关系映射(ORM)框架,它允许开发者用面向对象的方式来处理数据库操作,从而减轻了传统SQL编程的负担。在Hibernate 5.2.7.Final...

    hibernate-orm-3.2.zip

    Hibernate ORM 是一个强大的Java对象关系映射(ORM)框架,它极大地简化了数据库与Java应用程序之间的数据交互。在“hibernate-orm-3.2.zip”这个压缩包中,包含的是Hibernate 3.2版本的相关文件,这是一个历史悠久...

    Hibernate ORM - 一对一主键关联关系

    Hibernate ORM 是一个强大的Java对象关系映射(ORM)框架,它允许开发者将数据库操作与Java对象模型紧密结合,简化了数据库应用程序的开发。在一对一(One-to-One)主键关联关系中,两个实体类之间存在唯一对应的...

    hibernateORM1-n映射

    在"hibernateORM1-n映射"这个主题中,我们将深入探讨Hibernate中的一对多(1:N)映射关系。 在关系数据库中,一对多关系是指一个表中的记录可以对应另一个表中的多个记录。在Hibernate中,这种关系可以通过配置XML...

    Hibernate ORM - 一对一外键关联关系

    文件名"HibernateORM"可能代表了这个压缩包包含的资源是关于Hibernate ORM的,可能有示例代码、配置文件或其他相关教程材料,用于帮助读者理解和实践一对一外键关联。 **扩展知识点:** 1. **一对一外键关联配置**...

    hibernate-orm-4.3.9源码

    《深入剖析Hibernate ORM框架:基于hibernate-orm-4.3.9源码》 Hibernate,作为Java领域中的一款知名对象关系映射(ORM)框架,极大地简化了数据库操作,使得开发者可以更加专注于业务逻辑而不是数据库交互。本文将...

    Hibernate ORM - 多对多双向连接表关联关系

    在Java世界中,ORM(Object-Relational Mapping)框架如Hibernate是将数据库关系模型与对象模型之间进行映射的重要工具,极大地简化了数据库操作。本文将深入探讨Hibernate ORM中的一个关键概念——多对多双向连接表...

    ORM hibernate。jar包

    在Java领域,Hibernate是一个非常流行且强大的ORM框架,它简化了数据库操作,使开发者可以使用Java对象来处理数据库交互,而无需直接编写SQL语句。 标题提到的"ORM Hibernate .jar包"指的是Hibernate框架的可执行库...

    基于Java的hibernate ORM作业仓库设计源码

    本项目是基于Java的hibernate ORM作业仓库设计源码,包含29个文件,其中包括20个JAR文件、5个Java文件、2个XML文件、1个Gitignore文件和1个Iml文件。这个项目是一个ORM作业仓库,旨在通过Java技术栈实现,提供高效的...

Global site tag (gtag.js) - Google Analytics