JPA Annotation

GeneratedValue

Target: METHOD, FIELD
Implemented Interfaces:
Annotation

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;
See Also:
Id
TableGenerator
SequenceGenerator
Since:
JPA 1.0
The Auto Generated Values article explains how to use GeneratedValue.

Public Annotation Attributes

String generator default ""
(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.

Since:
JPA 1.0
(Optional) The primary key generation strategy that the persistence provider must use to generate the annotated entity primary key.
Since:
JPA 1.0