zoukankan      html  css  js  c++  java
  • Hibernate映射关系配置(五)

    多表继承:

    Bean:

    public class Person implements Serializable{
    
        private int id ;
        
        private String name ;
        
        private int age ;
    }
    public class Student extends Person implements Serializable {
        
        private String dream ;
        
        private Date birthday ;
    }
    public class Teacher extends Person implements Serializable{
    
        private String job ;
        
        private boolean merry ;
    }

    xml(在同一个表中,加一个字段来区分类型):

    Person.hbm.xml:
    <class name = "Person" discriminator-value="p">
            <id name = "id">
                <generator class="native" />
            </id>
            <!-- discriminator 是新建一个列,此列用来区分对象具体的类型 
                 discriminator-value 定义插入一个具体的对象的时候,自动向type列中插入指定的值
            -->
            <discriminator column="type" />
            <property name="name" />
            <property name="age" />
            
            <subclass name = "Teacher" discriminator-value="t">
                 <property name="job" />
                 <property name="merry" />
            </subclass>
            
            <subclass name = "Student" discriminator-value="s">
                 <property name="dream" />
                 <property name="birthday" />
            </subclass>
        </class>
        

    xml(在不同表中):

    Person.hbm.xml:
    <class name = "Person">
            <id name = "id">
                <generator class="native" />
            </id>
            
            <property name="name" />
            <property name="age" />
            
            <joined-subclass name="Teacher" table="Teacher">
                <key column="pid" />
                <property name="job" />
                <property name="merry" />
            </joined-subclass>
            
            <joined-subclass name="Student" table="Student">
                <key column="pid" />
                <property name="dream" />
                <property name="birthday" />
            </joined-subclass>
            
        </class>
  • 相关阅读:
    以“处理器”为中心的时代过去了
    新宿事件里的一句话
    2
    了解企业要招的,再去学相应的东西
    maxim
    ORA00980 无效同名
    Oracle 字符集的查看和修改
    Linux挂载磁盘
    ORA28002: 7 天之后口令将过期
    ORAdump函数
  • 原文地址:https://www.cnblogs.com/hyl-home/p/7577019.html
Copyright © 2011-2022 走看看