Annotation Type PrimaryKeyJoinColumns


  • @Target({TYPE,METHOD,FIELD})
    @Retention(RUNTIME)
    public @interface PrimaryKeyJoinColumns
    Groups PrimaryKeyJoinColumn annotations. It is used to map composite foreign keys.
        Example: ValuedCustomer subclass
    
        @Entity
        @Table(name="VCUST")
        @DiscriminatorValue("VCUST")
        @PrimaryKeyJoinColumns({
            @PrimaryKeyJoinColumn(name="CUST_ID", 
                referencedColumnName="ID"),
            @PrimaryKeyJoinColumn(name="CUST_TYPE",
                referencedColumnName="TYPE")
        })
        public class ValuedCustomer extends Customer { ... }
     
    Since:
    1.0
    See Also:
    ForeignKey
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      PrimaryKeyJoinColumn[] value
      One or more PrimaryKeyJoinColumn annotations.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      ForeignKey foreignKey
      (Optional) Used to specify or control the generation of a foreign key constraint when table generation is in effect.
      • foreignKey

        ForeignKey foreignKey
        (Optional) Used to specify or control the generation of a foreign key constraint when table generation is in effect. If both this element and the foreignKey element of any of the PrimaryKeyJoinColumn elements are specified, the behavior is undefined. If no foreign key annotation element is specified in either location, the persistence provider's default foreign key strategy will apply.
        Since:
        2.1
        Default:
        @jakarta.persistence.ForeignKey(jakarta.persistence.ConstraintMode.PROVIDER_DEFAULT)