Hibernate4继承映射
Hibernate 支持三种基本的继承映射策略:
1、单表继承:每棵类继承树使用一个表
2、具体表继承:每个子类一个表
3、类表继承:每个具体类一个表(有一些限制)
三种方式的比较:
1、所有类映射成一张表会产生数据冗余(不过这是通常采用的方法)
2、每个类映射成一张表会有效率问题,比如是三层或四层结构时,对于查询或更新会发出很多sql语句
3、具体类映射成表的缺点是主键不能自增
结论:使用第一种方式
?
?下面是基于注解的
?
/** 鸟 */@Entity@DiscriminatorValue("b")public class Bird extends Animal {private String color;// getter and setter}