This annotation is used to specify 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 { ... }
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 { ... }