Hibernate继承(2)子类属性生成在自己的一张表中,父类的属性一张表

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping SYSTEM "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd" >
<!--
    具体表继承
    子类扩展的数据保存在子类表中,继承的数据保存的父类表中  配置实现(如果才ER图上看就是一个一对一关系)
    因为子类的数据保存在自己的表中,所以不需要类似 单表继承 辨别列  而是通过一个 主键关联 

 -->
<hibernate-mapping package="bean">
    <class name="Person" table="t_person" >
        <id name="id"><generator class="identity"/></id>

        <property name="name"/>
        <property name="password"/>
        <property name="birthday"/>

        <joined-subclass name="Student">
            <key column="id"/>//必须指定关联的是哪个父类
            <property name="classId"/>
            <property name="className"/>
            <property name="course"/>
        </joined-subclass>

    </class>

</hibernate-mapping>
时间: 2024-10-06 12:02:47

Hibernate继承(2)子类属性生成在自己的一张表中,父类的属性一张表的相关文章

Andriod React Native 样式表中可用样式属性

写了这么多篇Android React Native的博文,基本上把复杂的东西都搞定了,接下来来看看一些轻松的东西,和布局有关,就是css样式,那么一个View可以设置哪些css样式呢,是和web中的css样式完全一样呢,还是有所不同呢?其实你只要在样式表中书写一个不存在的样式,就会报一大堆错,提示你该样式不存在,然后提供所有可用的样式给你,如图 下面的样式就是样式表中所有可用的属性. "alignItems", "alignSelf", "backfac

不允许修改SQLserver2008r2表中字段的属性问题

SQLserver2008r2修改表中字段的属性时弹出 点击工具->选项,取消阻止保存要求重新创建表的更改

css样式表中四种属性选择器

css样式表中四种属性选择器1> 简易属性 tag[class]{ font-weight:bold } It will affect all tag with any class. e.g. <h2 class="old" > or <h2 class="new"> 2>精确属性值 a[href="http://www.cnblogs.cn"][title="textTitle"]{fon

[moka同学笔记]Yii2.0给一张表中增加一个属性

1.model中建立关联 public function getUser(){ return$this->hasOne(User::className(),['id'=>'uid']) ; } 2.在视图中 <?= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ // ['class' => 'yii\grid\SerialColumn'], 取消掉编号 ['attribute'=&g

SQL SERVER数据库的表中修改字段属性被阻止“Prevent saving changes that require table re-creation”

1.启动SQL SERVER,选择工具—>选项,去掉“ 阻止保存要求重新创建表的更改”前面的勾. 2.选择设计器 3.去掉“阻止保存要求重新创建表的更改”前面的对号,点击OK. 重新启动SQL SERVER就可以了 .

hibernate继承关系映射关系方法(二)--每个子类一张表

TPS:所谓"每个子类一张表(Table Per Subclass)":父类一张表,每个子类一张表,父类的表保存公共有信息,子类的表只保存自己特有的信息 这种策略是使用<joined-subclass>标签来定义子类的.父类.子类都对应一张数据库表.在父类对应的数据库表中,它存储了所 有记录的公共信息,实际上该父类对应的表会包含所有的记录,包括父类和子类的记录:在子类对应的数据库表中,这个表只定义了子类中所特有的属性映射的字 段. person表 student表 work

hibernate 继承映射

对于面向对象的程序设计语言而言,继承和多态是两个最基本的概念.Hibernate 的继承映射可以理解持久化类之间的继承关系.例如:人和学生之间的关系.学生继承了人,可以认为学生是一个特殊的人,如果对人进行查询,学生的实例也将被得到. Hibernate支持三种继承映射策略: 使用 subclass 进行映射:将域模型中的每一个实体对象映射到一个独立的表中,也就是说不用在关系数据模型中考虑域模型中的继承关系和多态. 使用 joined-subclass 进行映射: 对于继承关系中的子类使用同一个表

用表来管理SQLServer中的扩展属性(描写叙述)

数据字典是个好东东,对于开发.维护很重要. 但Sql Server中写描写叙述确实不方便,怎样化繁为简.批量地添加改动扩展属性呢? 添加2个表和5个存储过程.2个触发器.1个表值函数就好了. 把以下的SQL运行一遍生成相关的对象, 然后运行一下: 1. EXEC Proc_Util_Desc_GetColumnNameToDescTable , 生成表的描写叙述相应记录 2. EXEC Proc_Util_Desc_GetTableNameToDescTable, 生成列的描写叙述相应记录 3.

用表来管理SQLServer中的扩展属性(描述)

数据字典是个好东东,对于开发.维护非常重要. 但Sql Server中写描述确实不方便,如何化繁为简.批量地增加修改扩展属性呢? 增加2个表和5个存储过程.2个触发器.1个表值函数就好了. 把下面的SQL执行一遍生成相关的对象, 然后执行一下: 1. EXEC Proc_Util_Desc_GetColumnNameToDescTable , 生成表的描述对应记录 2. EXEC Proc_Util_Desc_GetTableNameToDescTable, 生成列的描述对应记录 3. 查看,

【JVM虚拟机】(8)--深入理解Class中--方法、属性表集合

#[JVM虚拟机](8)--深入理解Class中--方法.属性表集合 之前有关class文件已经写了两篇博客: 1.[JVM虚拟机](5)---深入理解JVM-Class中常量池 2.[JVM虚拟机](6)---深入理解Class中访问标志.类索引.父类索引.接口索引 3.[JVM虚拟机](7)---深入理解Class中-属性集合 那么这篇博客主要讲有关 方法表集合 相关的理解和代码示例. 方法表集合: 告知该方法是什么修饰符修饰?是否有方法值?返回类型是什么?方法名称,方法参数,还有就是方法内