选自<<精通Hibernate:Java对象持久化技术详解>> 作者:孙卫琴 来源:www.javathinker.org
如果转载,请标明出处,谢谢
建立域模型和关系数据模型有着不同的出发点。域模型是由程序代码组成的,通过细化持久化类的粒度可提高代码可重用性,简化编程。关系数据模型是由关系数据组成的。在存在数据冗余的情况下,需要把粗粒度的表拆分成具有外键参照关系的几个细粒度的表,从而节省存储空间;另一方面,在没有数据冗余的前提下,应该尽可能减少表的数目,简化表之间的参照关系,以便提高访问数据库的速度。因此,在建立关系数据模型时,需要进行节省数据存储空间和节省数据操纵时间的折衷。
由于建立域模型和关系数据模型的原则不一样,使得持久化类的数目往往比数据库表的数目多,而且持久化类的属性并不和表的字段一一对应。如下图1所示, Customer类的homeAddress属性以及comAddress属性均和CUSTOMERS表中的多个字段对应。
如果转载,请标明出处,谢谢
建立域模型和关系数据模型有着不同的出发点。域模型是由程序代码组成的,通过细化持久化类的粒度可提高代码可重用性,简化编程。关系数据模型是由关系数据组成的。在存在数据冗余的情况下,需要把粗粒度的表拆分成具有外键参照关系的几个细粒度的表,从而节省存储空间;另一方面,在没有数据冗余的前提下,应该尽可能减少表的数目,简化表之间的参照关系,以便提高访问数据库的速度。因此,在建立关系数据模型时,需要进行节省数据存储空间和节省数据操纵时间的折衷。
由于建立域模型和关系数据模型的原则不一样,使得持久化类的数目往往比数据库表的数目多,而且持久化类的属性并不和表的字段一一对应。如下图1所示, Customer类的homeAddress属性以及comAddress属性均和CUSTOMERS表中的多个字段对应。
