当前位置: 首页 > 图文教程 > Java技术 > 数据库持久层 > Hibernate 实体关联关系映射----总结

数据库持久层
持久层设计和数据库设计的原则
关于php的数据库持久层设计
在 SCA Module 中使用 Hibernate 框架实现数据持久层
流行持久层框架对数据库操作
Hibernate持久层操作
hibernate 的 log4j.properties 配置文件
Hibernate的映射类型 hibernate mysql映射类型
hibernate的findByExample
持久化对象PO
终于用hibernate把数据持久层写完了 小结下遇到的一些问题
理解PO类在数据层和VO类在逻辑层的区别
hibernate中使用session之一
hibernate映射到mysql数据库时应该注意的几点
在Struts和Hibernate之间搭起桥梁
Hibernate技术文章-基本配置和写法
Hibernate技术
Hibernate详解
Java数据库编程中的技巧
Hibernate 实体关联关系映射----总结
Hibernate中二级缓存的配置和使用

数据库持久层 中的 Hibernate 实体关联关系映射----总结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 429 ::
收藏到网摘: n/a

Hibernate提供这些映射关系,常用就是一对一和多对一,并且在能不用连接表的时候尽量不要用连接表。多对多会用到,如果用到了,应该首先考虑底层数据库设计是否合理。

在实际开发中,在Hibernate关联关系之外常常还有另外一种选择方案,表各自作为单表映射,业务逻辑控制外键关系(有时候就是一个相关联的列,但不一定要加外键约束),这样更加灵活,并且数据的完整性同样有保证。

当然,“单表映射,业务控制外键关系”并不是说Hibernate的实体关联功能是多余的,Hibernate的实体关联的优点很多,随便拿本书都是讲优点,用好了会让开发人员感觉更方便,现在我也是两种方案结合使用。比如对于不很确定的两个实体,常常选用单表关联。 以前在初学Hibernate还没有完全搞清楚这些关联关系的时候,就是用单表映射,业务控制外键关系做的,发现没有任何问题,程序同样运行得很好。 看了这些是不是后悔浪费时间学习映射关系了?呵呵,Hibernate的OR Mapping是Hibernate的灵魂,我相信Hibernate的创始人比我们一般人的理解更深刻。只有学会了这些才能体会Hibernate设计者的思想。学一个东西,不光自己写代码,还应该能看懂别人的代码才行。因此系统学习这些关联映射还是大有必要的。 以上都是我自己的观点。欢迎在此交流讨论。 Hibernate在实际项目开发中,hbm.xml包括数据库脚本都是通过Xdoclet生成的,在此不采用Xdoclet的目的是为了便于理解这些映射模型。