@javax.persistence.Inheritance

hibernate buch cover klein

Extract of the annotation reference in the Hibernate Developer Guide by example

Extensive, easy-to-follow introduction to Hibernate 3 including complete working examples. Integration of Hibernate with other technologies like Spring, EJB3, Struts and JavaServer Faces (MyFaces) is explained.

It is available as PDF in English language.
A German paper book was published by the Galileo Verlag.

Get more information.

@javax.persistence.Inheritance(

legt eine Klasse als Oberklasse einer Vererbungshierarchie fest; Die Vererbungshierarchie kann in einer oder in mehreren Tabellen gespeichert werden.

strategy = InheritanceType.SINGLE_TABLE

legt die Strategie für das Mapping fest:

SINGLE_TABLE = Alle Spalten der Ober- und Unterklassen werden in einer Tabelle gespeichert.

TABLE_PER_CLASS = Die Oberklasse und jede Unterklasse haben eine eigene Tabelle. Geerbte Spalten sind in allen Tabellen enthalten.

JOINED = Die Oberklasse und jede Unterklasse haben eine eigene Tabelle. Geerbte Spalten sind nur in der Tabelle der Oberklasse enthalten.

)

Beispiel im Java-Package de.laliluna.inheritance.*

@Entity

@Inheritance(strategy = InheritanceType.SINGLE_TABLE)

@DiscriminatorColumn(name = "plant_type", discriminatorType = DiscriminatorType.STRING)

public class Plant implements Serializable {


@Entity

public class Flower extends Plant {