@Target(value={TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface PrimaryKeyJoinColumn
 It is used to join the primary table of an entity subclass in the JOINED
 mapping strategy to the primary table of its superclass; it is used within a SecondaryTable
 annotation to join a secondary table to a primary table; and it may be used in a OneToOne mapping
 in which the primary key of the referencing entity is used as a foreign key to the referenced entity.
 
 If no PrimaryKeyJoinColumn annotation is specified for a subclass in the JOINED
 mapping strategy, the foreign key columns are assumed to have the same names as the primary key columns of
 the primary table of the superclass.
 
    Example: Customer and ValuedCustomer subclass
 
    @Entity
    @Table(name="CUST")
    @Inheritance(strategy=JOINED)
    @DiscriminatorValue("CUST")
    public class Customer { ... }
 
    @Entity
    @Table(name="VCUST")
    @DiscriminatorValue("VCUST")
    @PrimaryKeyJoinColumn(name="CUST_ID")
    public class ValuedCustomer extends Customer { ... }
 SecondaryTable, 
Inheritance, 
OneToOne| Modifier and Type | Optional Element and Description | 
|---|---|
String | 
columnDefinition
(Optional) The SQL fragment that is used when generating the DDL for the column. 
 | 
ForeignKey | 
foreignKey
(Optional) The foreign key constraint specification for the join column. 
 | 
String | 
name
(Optional) The name of the primary key column of the current table. 
 | 
String | 
referencedColumnName
(Optional) The name of the primary key column of the table being joined to. 
 | 
public abstract String name
JOINED mapping strategy); the
 same name as the primary key column of the primary table (SecondaryTable mapping); or the
 same name as the primary key column for the table for the referencing entity (OneToOne
 mapping).public abstract String referencedColumnName
JOINED mapping
 strategy); the same name as the primary key column of the primary table (SecondaryTable
 mapping); or the same name as the primary key column for the table for the referencing entity (
 OneToOne mapping).public abstract String columnDefinition
OneToOne primary key association. Defaults to the generated SQL to create
 a column of the inferred type.public abstract ForeignKey foreignKey
Copyright © 2016. All rights reserved.