Annotation Type PrimaryKey


  • @Target(TYPE)
    @Retention(RUNTIME)
    public @interface PrimaryKey
    The PrimaryKey annotation allows advanced configuration of the Id. A validation policy can be given that allows specifying if zero is a valid id value. The set of primary key columns can also be specified precisely.
    Author:
    James Sutherland
    Since:
    EclipseLink 1.1
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      CacheKeyType cacheKeyType
      (Optional) Configures what cache key type is used to store the object in the cache.
      Column[] columns
      (Optional) Used to specify the primary key columns directly.
      IdValidation validation
      (Optional) Configures what id validation is done.
    • Element Detail

      • validation

        IdValidation validation
        (Optional) Configures what id validation is done. By default 0 is not a valid id value, this can be used to allow 0 id values.
        Default:
        org.eclipse.persistence.annotations.IdValidation.ZERO
      • cacheKeyType

        CacheKeyType cacheKeyType
        (Optional) Configures what cache key type is used to store the object in the cache. By default the type is determined by what type is optimal for the class.
        Default:
        org.eclipse.persistence.annotations.CacheKeyType.AUTO
      • columns

        Column[] columns
        (Optional) Used to specify the primary key columns directly. This can be used instead of @Id if the primary key includes a non basic field, such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
        Default:
        {}