nameFay 2012-03-09
概念:
Hibernate映射主要是通过对象关系映射文件实现,将对数据库的操作直接转换为对实体对象的操作 ,实现了真正的面向对象编程。
目的:
使用映射的目的除了实现面向对象操作同时还提高了效率。
其实建立实体对象间的关联关系就相当于在多个表间建立约束(只是从表转换到了对象上)。
分类:
1.基本映射
正确理解各个配置选项的含义是掌握映射文件的关键。
映射文件可以对面向对象中的关联关系、继承关系和组合关系等各种关系进行配置,下面我们来看一下基本的映射标签:
2.关联映射
对于关联映射最主要的就是先弄清楚两者之间的关系(几对几),然后再确定由谁来维护关系(一般是多的一端维护关系)。
通过两者间的关系可以分为以下几类(具体用法先不在这里进行阐述了):
多对一关联映射(多的一端维护关系)
一对一关联映射
一对一主键关联映射
一对一唯一外键关联映射
一对多关联映射(多的一端维护关系)
多对多关联映射(需要建立中间表)
3.继承映射
每棵类继承树一张表:一棵类树(多个类,有一个根类)只有一张表。
每个类一张表:有多少个类就有多少个表。
每个具体类一张表:有多少个叶子类就有多少个表。
4.复合主键映射
通常做法是将主键相关字段放到一个单独的类中,这个类是有要求的:
1.必须实现序列号Serializable接口
2.覆盖equals和hashcode方法
5.集合映射:
Set、List、Array、Map、Bag集合的映射分别使用<set>标签,<list>标签,<array>标签,<map>标签,<bag>标签表示。
6.组件映射:
Compontent是一个值类,从属于实体类,它与实体类的主要差别在于,它没有oid;
采用Compontent的好处:实现对象模型的细粒度划分,复用率高,含义明确,层次分明。
使用 CSS3,网页设计师可以使用他/她喜欢的任何字体。只需简单的将字体文件包含在网站中,它会自动下载给需要的用户。在新的 @font-face 规则中,您必须首先定义字体的名称,然后指向该字体文件。