Annotation Interface SequenceGenerator
- an entity class,
- the primary key field or property of an entity class, or
- a package descriptor.
Every sequence generator has a name(). If this
annotation occurs on an entity class or primary key attribute
of an entity class, and the name() member is not
explicitly specified by the annotation, the name defaults to
the name of the annotated entity. The scope of the generator
name is global to the persistence unit (across all generator
types).
If this annotation occurs on a package descriptor, and the
name() member is not explicitly specified by the
annotation, then the annotation defines a recipe for producing
a default generator when a GeneratedValue annotation
of any program element in the annotated package has
strategy=SEQUENCE and a
defaulted generator name.
The name of this default generator is the defaulted generator
name, and its other properties are determined by the members
of the package SequenceGenerator annotation.
Example:
@SequenceGenerator(name = "EMP_SEQ", allocationSize = 25)
A named generator may be referenced by the
generator element of the
GeneratedValue annotation.
- Since:
- 1.0
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionint(Optional) The amount to increment by when allocating sequence numbers from the sequence.(Optional) The catalog of the sequence generator.int(Optional) The value from which the sequence object is to start generating.(Optional) A unique generator name that can be referenced by one or more classes to be the generator for primary key values.(Optional) A SQL fragment appended to the generated DDL statement which creates this sequence.(Optional) The schema of the sequence generator.(Optional) The name of the database sequence object from which to obtain primary key values.
-
Element Details
-
name
String name(Optional) A unique generator name that can be referenced by one or more classes to be the generator for primary key values.Defaults to the name of the entity when the annotation occurs on an entity class or primary key attribute.
- Default:
""
-
sequenceName
String sequenceName(Optional) The name of the database sequence object from which to obtain primary key values.Defaults to a provider-chosen value.
- Default:
""
-
catalog
-
schema
-
initialValue
int initialValue(Optional) The value from which the sequence object is to start generating.- Default:
1
-
allocationSize
int allocationSize(Optional) The amount to increment by when allocating sequence numbers from the sequence.- Default:
50
-
options
String options(Optional) A SQL fragment appended to the generated DDL statement which creates this sequence.- Since:
- 3.2
- Default:
""
-