Annotation Interface GeneratedValue


@Target({METHOD,FIELD}) @Retention(RUNTIME) public @interface GeneratedValue
Provides for the specification of generation strategies for the values of primary keys.

The GeneratedValue annotation may be applied to a primary key property or field of an entity or mapped superclass in conjunction with the Id annotation. The use of the GeneratedValue annotation is only required to be supported for simple primary keys. Use of the GeneratedValue annotation is not supported for derived primary keys.


     Example 1:

     @Id
     @GeneratedValue(strategy=SEQUENCE, generator="CUST_SEQ")
     @Column(name="CUST_ID")
     public Long getId() { return id; }

     Example 2:

     @Id
     @GeneratedValue(strategy=TABLE, generator="CUST_GEN")
     @Column(name="CUST_ID")
     Long id;
 
Since:
Java Persistence 1.0
See Also:
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    (Optional) The name of the primary key generator to use as specified in the SequenceGenerator or TableGenerator annotation.
    (Optional) The primary key generation strategy that the persistence provider must use to generate the annotated entity primary key.
  • Element Details

    • strategy

      GenerationType strategy
      (Optional) The primary key generation strategy that the persistence provider must use to generate the annotated entity primary key.
      Default:
      AUTO
    • generator

      String generator
      (Optional) The name of the primary key generator to use as specified in the SequenceGenerator or TableGenerator annotation.

      Defaults to the id generator supplied by persistence provider.

      Default:
      ""