# Table per Class



## Schuriko (24. Mai 2019)

Ich habe eine Klasse A und eine Klasse B, wobei 


B von A abgeleitet ist
Klasse A soll den Datentabellenname "a" bekommen und Klasse B soll den Datentabellenname "B" bekommen
Also eine Table per Class, soweit ich es bis jetzt verstanden habe. Also dachte ich mir schreibst es einfach

@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
@Table(name="a")
class A 
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
;

@Entity
@Table(name="b")
class B extends A 
         public B() {
             super();
         }

wobei ich in Klasse B kein id-attribute angebe, da es ja bereits in A definiert ist.

Ich erhalte allerdings eine Fehlermeldung: Cannot use identity column key generation with <union-subclass> mapping for: ...

Wie müsste ich es korrekt schreiben?


----------



## Schuriko (24. Mai 2019)

Hat sich soeben erledigt. Hatte übersehen den GenerationType umzustellen.


----------



## Schuriko (24. Mai 2019)

Ein Problem ist mir jetzt doch noch aufgefallen. Die ID, sprich der Primary Key, wird nicht mehr autoincremented. Wie umgeht ihr dieses Problem?


----------

