`

20.hibernate继承映射single_table

阅读更多
单个表:
person表结构如下:

package com.bjsxt.hibernate;

import javax.persistence.DiscriminatorColumn;
import javax.persistence.DiscriminatorType;
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;

@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="discriminator", discriminatorType=DiscriminatorType.STRING)
@DiscriminatorValue("person")
public class Person {
	private int id;
	private String name;
	
	@Id
	@GeneratedValue
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}

}



package com.bjsxt.hibernate;

import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;

@Entity
@DiscriminatorValue("teacher")
public class Teacher extends Person {
	private String title;

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	
}



package com.bjsxt.hibernate;

import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;

@Entity
@DiscriminatorValue("student")
public class Student extends Person {
	
	private int score;

	public int getScore() {
		return score;
	}

	public void setScore(int score) {
		this.score = score;
	}
	
}

  • 大小: 7.7 KB
分享到:
评论

相关推荐

    Hibernate继承映射代码

    Hibernate提供了四种继承策略:单表继承(Single Table Inheritance)、联合继承( Joined Table Inheritance)、表 per 类继承(Table per Class Inheritance)以及分层继承(Concrete Table Inheritance)。...

    Hibernate继承映射(annotation)

    **标题:“Hibernate继承映射(Annotation)详解”** 在Java持久化框架Hibernate中,继承映射是一种关键特性,它允许开发者将对象模型的继承结构映射到数据库的表结构。在使用注解的方式进行配置时,这个过程变得更加...

    Hibernate教程17_继承映射_补充2

    在本教程中,我们将深入探讨Hibernate中的继承映射,特别是在"Hibernate教程17_继承映射_补充2"中所涉及的主题。Hibernate是Java中一个非常流行的对象关系映射(ORM)框架,它允许开发者用面向对象的方式处理数据库...

    Hibernate继承映射的第一种策略:每棵类继承树对应一张表

    Hibernate继承映射是将Java类的继承关系映射到数据库表的一种策略,使得对象模型的复杂性能够平滑地转化为关系数据库模型。本篇将详细介绍Hibernate继承映射的第一种策略——每棵类继承树对应一张表,即单一表继承...

    Hibernate教程17_继承映射_补充1

    总之,"Hibernate教程17_继承映射_补充1"的源码涵盖了如何使用Hibernate将Java类的继承结构映射到数据库中的"Table Per Class"策略。通过学习这个教程,开发者可以更好地理解和利用Hibernate的继承映射功能,以适应...

    HibernateDemo003_TABLE_PER_CLASS.rar_class

    Hibernate提供了多种策略来处理这种情况,如单表策略(Single Table),联合实体策略( Joined Subclass)以及我们这里关注的表-per-class策略。每种策略都有其优点和适用场景。 1. **表-per-class策略**:在这种...

    Hibernate继承映射-概述

    Hibernate通过`@Inheritance`注解配合`strategy="SINGLE_TABLE"`来声明这是一个继承关系。`@DiscriminatorColumn`定义了用于区分子类的字段,而`@DiscriminatorValue`则指定每个子类的值。 ```java @Entity @...

    hibernate继承映射.rar

    《Hibernate继承映射详解》 Hibernate,作为Java领域中的一款著名对象关系映射(ORM)框架,极大地简化了数据库操作。在实际项目中,我们常常会遇到类的继承关系,而Hibernate提供了强大的支持来处理这种继承关系的...

    Hibernate教程17_继承映射

    在Hibernate中,继承映射主要有三种策略:单表继承(Single Table Inheritance)、联合继承( Joined Table Inheritance)和表格-per-类继承(Table per Concrete Class)。本教程可能主要关注的是单表继承,这也是...

    用Hibernate映射继承关系

    ### 用Hibernate映射继承关系 #### 14.1 继承关系树的每个具体类对应一个表 在Hibernate中映射继承关系时,一种常见的策略是将继承关系树的每个具体类映射到单独的数据库表中。这种方法称为**表/类映射**(Table/...

    hibernate关联映射实例

    本文将深入探讨“hibernate关联映射实例”中的关键知识点,包括一对多、多对多和继承映射,这些都是Hibernate中至关重要的概念。 1. **一对多关联映射**: 在现实世界中,一个实体可能会与多个其他实体相关联,...

    Hibernate继承关系映射.pdf

    标题:“Hibernate继承关系映射.pdf” 描述:“简明扼要地介绍了Hibernate中继承关系的映射方式,深入探讨了三种不同的映射策略及其优缺点,同时解析了多态查询的概念。” 知识点: ### Hibernate继承关系映射...

    Hibernate继承映射的第一种策略:每个类对应一张表

    Hibernate提供了多种继承映射策略,其中最常见的是单表策略(Single Table Strategy)、子类表策略(Table per subclass)和联合表策略(Concrete Table Inheritance)。 标题提到的“每个类对应一张表”策略,实际...

    Hibernate继承映射一:每个类分层结构一张表

    本篇文章主要探讨的是Hibernate的继承映射策略,特别是“每个类分层结构一张表”(Table per Concrete Class)的方式。这种映射策略是Hibernate提供的多种继承映射方案之一,适用于处理复杂的对象模型。 首先,我们...

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    9.1. 继承映射特性(Features of inheritance mappings) 16.1. 别名注射(alias injection names) 19.1. 缓存策略提供商(Cache Providers) 19.2. 各种缓存提供商对缓存并发策略的支持情况(Cache Concurrency ...

    hibernate 映射继承 demo

    《Hibernate映射继承实战解析》 在Java世界中,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。它允许开发者用面向对象的方式处理数据,而无需关心底层SQL语句的编写。在大型项目中,...

Global site tag (gtag.js) - Google Analytics