TableGenerator
Target: TYPE, METHOD, FIELD
- Implemented Interfaces:
Annotation
Defines a primary key generator that may be referenced by name when a generator element is specified for the GeneratedValue annotation. A table generator may be specified on the entity class or on the primary key field or property. The scope of the generator name is global to the persistence unit (across all generator types). Example 1:
@Entity public class Employee { ... @TableGenerator( name="empGen", table="ID_GEN", pkColumnName="GEN_KEY", valueColumnName="GEN_VALUE", pkColumnValue="EMP_ID", allocationSize=1) @Id @GeneratedValue(strategy=TABLE, generator="empGen") int id; ... }Example 2:
@Entity public class Address { ... @TableGenerator( name="addressGen", table="ID_GEN", pkColumnName="GEN_KEY", valueColumnName="GEN_VALUE", pkColumnValue="ADDR_ID") @Id @GeneratedValue(strategy=TABLE, generator="addressGen") int id; ... }
- See Also:
GeneratedValue
- Since:
- JPA 1.0
The Auto Generated Values article explains how to use
TableGenerator
.Public Annotation Attributes
int allocationSize default 50
- Since:
- JPA 1.0
String catalog default ""
Defaults to the default catalog.
- Since:
- JPA 1.0
These are only used if table generation is in effect. Note that it is not necessary to specify an index for a primary key, as the primary key index will be created automatically.
- Since:
- JPA 2.1
int initialValue default 0
- Since:
- JPA 1.0
String name default null
- Since:
- JPA 1.0
String pkColumnName default ""
Defaults to a provider-chosen name.
- Since:
- JPA 1.0
String pkColumnValue default ""
Defaults to a provider-chosen value to store in the primary key column of the generator table
- Since:
- JPA 1.0
String schema default ""
Defaults to the default schema for user.
- Since:
- JPA 1.0
String table default ""
Defaults to a name chosen by persistence provider.
- Since:
- JPA 1.0
These are only used if table generation is in effect. These constraints apply in addition to primary key constraints.
Defaults to no additional constraints.
- Since:
- JPA 1.0
String valueColumnName default ""
Defaults to a provider-chosen name.
- Since:
- JPA 1.0