Annotation Type 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;
     
    See Also:
    Id, TableGenerator, SequenceGenerator
    Since:
    1.0
    • Optional Element Summary

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

      • strategy

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

        java.lang.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:
        ""