About Java and JRuby Development
JEE, Spring, Guice
Hibernate, Java Persistence (JPA)
and various Web Frameworks

@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 {