javax.persistence

## Annotation Type PrimaryKeyJoinColumns

    @Target(value={TYPE,METHOD,FIELD})
     @Retention(value=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:
  Java Persistence 1.0
See Also:
  `ForeignKey`

### Required Element Summary

Required Elements
`PrimaryKeyJoinColumn[]` `value` One or more `PrimaryKeyJoinColumn` annotations.

### Optional Element Summary

Optional Elements
`ForeignKey` `foreignKey` (Optional) Used to specify or control the generation of a foreign key constraint when table generation is in effect.

### Element Detail

#### value

    public abstract PrimaryKeyJoinColumn[] value

One or more `PrimaryKeyJoinColumn` annotations.

#### foreignKey

    public abstract 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:
  Java Persistence 2.1

Default:
  @javax.persistence.ForeignKey(javax.persistence.ConstraintMode.PROVIDER_DEFAULT)