Hibernate 实体关联关系映射----总结

简介:
Hibernate 实体关联关系映射----总结
 
花了三天的业余时间,终于写完了Hibernate关联关系映射的所有实例,感觉还应该总结一下。
 
Hibernate映射关系错综复杂,在实际中真的都能用到吗?不用行吗?
 
在我看来,Hibernate提供这些映射关系,常用就是一对一和多对一,并且在能不用连接表的时候尽量不要用连接表。多对多会用到,如果用到了,应该首先考虑底层数据库设计是否合理。
 
在实际开发中,在Hibernate关联关系之外常常还有另外一种选择方案,表各自作为单表映射,业务逻辑控制外键关系(有时候就是一个相关联的列,但不一定要加外键约束),这样更加灵活,并且数据的完整性同样有保证。
 
当然,“单表映射,业务控制外键关系”并不是说Hibernate的实体关联功能是多余的,Hibernate的实体关联的优点很多,随便拿本书都是讲优点,用好了会让开发人员感觉更方便,现在我也是两种方案结合使用。比如对于不很确定的两个实体,常常选用单表关联。
 
以前在初学Hibernate还没有完全搞清楚这些关联关系的时候,就是用单表映射,业务控制外键关系做的,发现没有任何问题,程序同样运行得很好。
 
看了这些是不是后悔浪费时间学习映射关系了?呵呵,Hibernate的OR Mapping是Hibernate的灵魂,我相信Hibernate的创始人比我们一般人的理解更深刻。只有学会了这些才能体会Hibernate设计者的思想。学一个东西,不光自己写代码,还应该能看懂别人的代码才行。因此系统学习这些关联映射还是大有必要的。
 
以上都是我自己的观点。欢迎在此交流讨论。
 
Hibernate在实际项目开发中,hbm.xml包括数据库脚本都是通过Xdoclet生成的,在此不采用Xdoclet的目的是为了便于理解这些映射模型。实体-数据表-映射文件 三者对比看,太直观了。
 
瞌睡了,暂时先写到此,有新思路了再补上。。。。
 
-----------------------------------------------------
 
Hibernate关联关系映射目录
│ 
├─单向关联
│  ├─   一对一外键单向关联
│  ├─   一对一主键单向关联
│  ├─   一对一连接表单向关联
│  ├─   一对多外键单向关联
│  ├─   一对多连接表单向关联
│  ├─   多对一外键单向关联
│  ├─   多对一连接表单向关联
│  └─   多对多单向关联
└─双向关联
    ├─   一对一外键双向关联
    ├─   一对一主键双向关联
    ├─   一对一连接表双向关联
    ├─   一对多外键双向关联
    ├─   一对多连接表双向关联
    └─   多对多双向关联
 
 
 本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/39398,如需转载请自行联系原作者
相关文章
|
7月前
|
SQL Java 关系型数据库
Hibernate - 对象关系映射文件(*.hbm.xml)详解
Hibernate - 对象关系映射文件(*.hbm.xml)详解
292 1
|
7月前
|
SQL 存储 Java
Hibernate - 继承关联关系映射
Hibernate - 继承关联关系映射
75 0
|
7月前
|
机器学习/深度学习 SQL Java
Hibernate - 多对多关联关系映射
Hibernate - 多对多关联关系映射
67 0
|
7月前
|
SQL Java 数据库连接
Hibernate -双向一对一关联关系映射
Hibernate -双向一对一关联关系映射
55 0
|
7月前
|
SQL XML Java
Hibernate - 单向多对一关联关系映射
Hibernate - 单向多对一关联关系映射
42 0
|
XML Java 数据库连接
《Hibernate上课笔记》----class4----Hibernate继承关系映射实现详解
《Hibernate上课笔记》----class4----Hibernate继承关系映射实现详解
97 0
《Hibernate上课笔记》----class4----Hibernate继承关系映射实现详解
|
SQL 存储 数据可视化
Java Web之Hibernate的高级应用(数据库实体关联之间的映射规则、实体继承关系映射、Hibernate查询语言)
Java Web之Hibernate的高级应用(数据库实体关联之间的映射规则、实体继承关系映射、Hibernate查询语言)
192 0
Java Web之Hibernate的高级应用(数据库实体关联之间的映射规则、实体继承关系映射、Hibernate查询语言)
|
XML Java 关系型数据库
hibernate里面的一对多关系映射
hibernate里面的一对多关系映射
113 0
|
SQL NoSQL Java
hibernate(五) hibernate一对一关系映射详解
之前讲解了一对多(单向、双向)、多对多(双向),今天就讲解一下最后一个关系,一对一。 心情不错。状态也挺好的,赶紧写一篇博文造福一下大家把。  
289 0
|
SQL Java 数据库连接
Hibernate 关系映射 总结整理
hibernate关联映射  《Hibernate 关系映射》是我很早之前收集、总结整理的,在此也发上来 希望对大家有用。
1654 0