人类(Person) , 男人(Men)继承"人"类, 女人(Women)继承"人"类, UML请看15讲.
映射到两个表:
人类(Person) 与 男人(Men)类 映射到如下的t_person表中 , 有以下5个字段:
1 int id //主键
2 varchar name //父类中的姓名
3 int age //父类中的年龄
4 int/varchar type //区分"人","男人","女人" 的专用字段, 默认类型是varchar, 也可以指定为int类型. 叫鉴别器字段
//Person类:type值设为0, Men类: type值设为1, Women 类: 2
5 varchar a //"男人"类专有属性
女人(Women)类, 单独保存在一张表中.就像第15讲一样.
映射文件 例子就像下面:
<?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="包名"> <class name="Person" discriminator-value="0"> <id name="id"> <generator class="hilo"/> </id> <!-- 鉴别器 ,重要 --> <discriminator column="type" type="int"/> <property name="name"/><!-- 父类的属性 --> <property name="age"/><!-- 父类的属性 --> <!-- Men类的映射--> <subclass name="Men" discriminator-value="1"> <property name="a"/><!-- Men类专有的属性a --> </subclass> <!-- Women类的映射--> <subclass name="Women" discriminator-value="2"> <join table="t_women"> <key column="person_id"/> <property name="b"/> <!-- Women类专有的属性b --> </join> </subclass> </class> </hibernate-mapping>
保存与查询操作: 略.. 请看14,15讲
本文介绍了一种使用UML表示的人类、男人及女人类的继承关系,并通过Hibernate框架将其映射到数据库的具体实现方式。主要内容包括:类之间的继承关系如何在UML中表示,如何将这些类映射到数据库表结构中,以及如何配置Hibernate映射文件。
2万+

被折叠的 条评论
为什么被折叠?



