javax.jdo.annotations

## Annotation Type Key

-     @Target(value={ANNOTATION_TYPE,FIELD,METHOD})
       @Retention(value=RUNTIME)
      public @interface Key

  Annotation for the key of a map relation. Corresponds to the xml element "key".
  Since:
    2.1
  Version:
    2.1

- - ### Optional Element Summary

    Optional Elements
    Modifier and Type | Optional Element and Description
    --- | ---
    `String` | `column` Name of the column to store the key in.
    `Column[]` | `columns` The column(s) for the key
    `Class<? extends AttributeConverter>` | `converter` Optional `AttributeConverter` to use for converting this key.
    `ForeignKeyAction` | `deleteAction` Delete action to apply to the foreign key for the key.
    `String` | `dependent` Whether the key is dependent on the owner (and will be deleted when the owner is deleted).
    `String` | `embedded` Whether this key is embedded.
    `Embedded[]` | `embeddedMapping` The embedded mapping for the key.
    `Extension[]` | `extensions` Vendor extensions.
    `String` | `foreignKey` Name for a generated foreign key constraint.
    `String` | `generateForeignKey` Generate or assume a foreign key constraint exists on the column or columns associated with this join.
    `String` | `index` The name of the index to generate.
    `String` | `indexed` Whether the value column(s) should be indexed.
    `String` | `mappedBy` Name of a member in the value class where this key is stored.
    `String` | `serialized` Whether the key is to be stored serialized (into a single column of a join table).
    `String` | `table` Name of the table for the key.
    `Class[]` | `types` Types of the keys.
    `String` | `unique` Whether the element column(s) contents should be considered unique
    `String` | `uniqueKey` The name of the unique key constraint to generate.
    `ForeignKeyAction` | `updateAction` Update action to apply to the foreign key for the key.
    `boolean` | `useDefaultConversion` Whether we should disable any converter that was specified as default for this type on the PMF.

- - ### Element Detail

    - #### types

          public abstract Class[] types

      Types of the keys. This can be determined if using JDK1.5 generics but is required otherwise. Multiple types can be specified if the implementation supports multiple types.
      Returns:
        the types of keys
      Default:
        {}

  - - #### serialized

          public abstract String serialized

      Whether the key is to be stored serialized (into a single column of a join table).
      Returns:
        whether the key is to be stored serialized
      Default:
        ""

  - - #### embedded

          public abstract String embedded

      Whether this key is embedded.
      Returns:
        whether this key is embedded
      Default:
        ""

  - - #### embeddedMapping

          public abstract Embedded[] embeddedMapping

      The embedded mapping for the key.
      Returns:
        the embedded mapping for the key
      Default:
        {}

  - - #### dependent

          public abstract String dependent

      Whether the key is dependent on the owner (and will be deleted when the owner is deleted).
      Returns:
        whether the key is dependent on the owner
      Default:
        ""

  - - #### table

          public abstract String table

      Name of the table for the key.
      Returns:
        name of the table for the key
      Default:
        ""

  - - #### column

          public abstract String column

      Name of the column to store the key in.
      Returns:
        name of the column to store the key in
      Default:
        ""

  - - #### deleteAction

          public abstract ForeignKeyAction deleteAction

      Delete action to apply to the foreign key for the key.
      Returns:
        delete action to apply to the foreign key for the key
      Default:
        javax.jdo.annotations.ForeignKeyAction.UNSPECIFIED

  - - #### updateAction

          public abstract ForeignKeyAction updateAction

      Update action to apply to the foreign key for the key.
      Returns:
        update action to apply to the foreign key for the key
      Default:
        javax.jdo.annotations.ForeignKeyAction.UNSPECIFIED

  - - #### indexed

          public abstract String indexed

      Whether the value column(s) should be indexed.
      Returns:
        whether the value column(s) should be indexed.
      Default:
        ""

  - - #### index

          public abstract String index

      The name of the index to generate.
      Returns:
        the name of the index
      Default:
        ""

  - - #### unique

          public abstract String unique

      Whether the element column(s) contents should be considered unique
      Returns:
        whether the element column(s) contents should be considered unique
      Default:
        ""

  - - #### uniqueKey

          public abstract String uniqueKey

      The name of the unique key constraint to generate.
      Returns:
        the name of the unique key constraint
      Default:
        ""

  - - #### mappedBy

          public abstract String mappedBy

      Name of a member in the value class where this key is stored.
      Returns:
        the name of a member in the value class where this key is stored
      Default:
        ""

  - - #### columns

          public abstract Column[] columns

      The column(s) for the key
      Returns:
        the column(s) for the key
      Default:
        {}

  - - #### generateForeignKey

          public abstract String generateForeignKey

      Generate or assume a foreign key constraint exists on the column or columns associated with this join. Specify "true" or "false".
      Returns:
        whether to generate or assume a foreign key constraint
      Default:
        ""

  - - #### foreignKey

          public abstract String foreignKey

      Name for a generated foreign key constraint.
      Returns:
        the name of the generated foreign key constraint
      Default:
        ""

  - - #### converter

          public abstract Class<? extends AttributeConverter> converter

      Optional `AttributeConverter` to use for converting this key.
      Returns:
        Optional converter class for converting this key (when non-PersistenceCapable)
      Default:
        javax.jdo.AttributeConverter.UseDefault.class

  - - #### useDefaultConversion

          public abstract boolean useDefaultConversion

      Whether we should disable any converter that was specified as default for this type on the PMF. Only has any effect when this is explicitly set to true, when any AttributeConverter specified for this type either here or for the class or at the PMF will be ignored and will use the JDO implementation default handling.
      Returns:
        Whether PMF attribute conversion is to be disabled.
      Default:
        false

  - - #### extensions

          public abstract Extension[] extensions

      Vendor extensions.
      Returns:
        the vendor extensions
      Default:
        {}

Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.