Hibernate学习笔记-------继承关系映射

本文详细介绍了使用Hibernate框架进行实体类继承关系映射的方法。包括单表映射、每个子类映射为单独表以及鉴别器与内连接相结合的方式。通过具体的XML配置示例展示了不同映射方式的应用场景。

继承关系映射配置实例------------>

<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.xx.domain"> <!-- 继承关系之映射成一张表 --> <!-- 父类的也必须加上discriminator-value属性 --> <class name="Animal" table="t_animal" discriminator-value="0"> <id name="id"> <generator class="native" /> </id> <discriminator column="type" type="int"/> <property name="name"/> <subclass name="Pepole" discriminator-value="1"> <property name="sex" ></property> </subclass> <subclass name="Dog" discriminator-value="2"> <property name="age" ></property> </subclass> </class> <!-- 继承关系之每个子类映射成一张表 --> <!-- <class name="Animal" table="t_animal"> <id name="id"> <generator class="native" /> </id> <property name="name"/> <joined-subclass name="Pepole"> <key column="animalid"/> <property name="sex"></property> </joined-subclass> <joined-subclass name="Dog"> <key column="animalid"/> <property name="age"></property> </joined-subclass> </class> --> <!-- 继承关系之鉴别器与内连接相结合 --> <!-- <class name="Animal" table="t_animal" discriminator-value="0"> <id name="id"> <generator class="native" /> </id> <discriminator column="type" type="int"/> <property name="name"/> <subclass name="Pepole" discriminator-value="1"> <property name="sex" ></property> </subclass> <subclass name="Dog" discriminator-value="2"> <join table="dog"> <key column="anmimalid"/> <property name="age" ></property> </join> </subclass> </class> --> <!-- 每个具体类映射一张独立表 --> <!-- 子类的表和父类的表的id不能重复,所以不能用自增 --> <!-- <class name="Animal" table="t_animal"> <id name="id"> <generator class="hilo" /> </id> <property name="name"/> <union-subclass name="Pepole"> <property name="sex"/> </union-subclass> <union-subclass name="Dog"> <property name="age"/> </union-subclass> </class> --> </hibernate-mapping>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值