hibernate的映射关系

来源:互联网 发布:从微信里打开淘宝 编辑:程序博客网 时间:2024/06/07 02:58

hibernate是一个对象关系映射框架,主要通过映射文件将表及表之间的关系,转变为对象之间的关系,更符合面向对象编程的特点,在进行复杂的查询时,通过对象间的关系来获取信息显得更加便捷。

我们先要了解一下实际数据库中表之间的关系:

大致有一对一,一对多(多对一),多对多的三种关系,而多对多又常常利用中间表转化为一对多(多对一)的关系

 

 

但经过映射转变为对象之间的关系,变为七种关系

单向一对一

单向一对多

单向多对一

单向多对多

 

双向一对一

双向一对多(多对一)

双向多对多

 

 

虽然有七种关系,但我们要理解,实际开发数据库中的表就只存在一对一,一对多(多对一)这两种(多对对被转变),只是因为我们要通过对象来操作这些表,必然牵扯到一个对象获取另一个对象的路径。这和我们的sql语句类似,就像我们....fom table_name...,我们选取的表名其实就是一个单向路径,只不过我们可以灵活使用sql,达到任意路径的效果。从这也可以看出,其实hibernate是以映射文件中的相应配置实现了这种效果。

那显而易见,我们的学习重点就是学会熟练的配置映射文件中相关的信息。

这篇文章中关于七种映射关系总结的很好,图文并茂:http://blog.csdn.net/huangaigang6688/article/details/7761310