Jakarta Persistence (JPA) Annotation Type

jakarta.persistence.SecondaryTables

Implemented Interfaces:
Annotation
Target:
Type

Specifies multiple secondary tables for an entity.

Example 1: Multiple secondary tables assuming primary key columns are named the same in all tables.

@Entity
@Table(name = "EMPLOYEE")
@SecondaryTables({
    @SecondaryTable(name = "EMP_DETAIL"),
    @SecondaryTable(name = "EMP_HIST")})
public class Employee { ... }

Example 2: Multiple secondary tables with differently named primary key columns.

@Entity
@Table(name = "EMPLOYEE")
@SecondaryTables({
    @SecondaryTable(name = "EMP_DETAIL",
                    pkJoinColumns = @PrimaryKeyJoinColumn(name = "EMPL_ID")),
    @SecondaryTable(name = "EMP_HIST",
                    pkJoinColumns = @PrimaryKeyJoinColumn(name = "EMPLOYEE_ID"))})
public class Employee { ... }

Since:
Jakarta Persistence (JPA) 1.0

Annotation Elements

(Required) The secondary tables for an entity.
Since:
Jakarta Persistence (JPA) 1.0

Additional JDK methods inherited from java.lang.annotation.Annotation

java.lang.annotation.Annotation/annotationType(), java.lang.annotation.Annotation/equals(Object), java.lang.annotation.Annotation/hashCode(), java.lang.annotation.Annotation/toString()