@Target(value={TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface TableGenerator
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")
public 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")
public int id;
...
}
| 限定符和类型 | 必需的元素和说明 |
|---|---|
String |
name
(Required) A unique generator name that can be referenced
by one or more classes to be the generator for id values.
|
| 限定符和类型 | 可选元素和说明 |
|---|---|
int |
allocationSize
(Optional) The amount to increment by when allocating id
numbers from the generator.
|
String |
catalog
(Optional) The catalog of the table.
|
int |
initialValue
(Optional) The initial value to be used when allocating id
numbers from the generator.
|
String |
pkColumnName
(Optional) Name of the primary key column in the table.
|
String |
pkColumnValue
(Optional) The primary key value in the generator table
that distinguishes this set of generated values from others
that may be stored in the table.
|
String |
schema
(Optional) The schema of the table.
|
String |
table
(Optional) Name of table that stores the generated id values.
|
String |
valueColumnName
(Optional) Name of the column that stores the last value generated.
|
public abstract String name
public abstract String table
Defaults to a name chosen by persistence provider.
public abstract String catalog
Defaults to the default catalog.
public abstract String schema
Defaults to the default schema for user.
public abstract String pkColumnName
Defaults to a provider-chosen name.
public abstract String valueColumnName
Defaults to a provider-chosen name.
public abstract String pkColumnValue
Defaults to a provider-chosen value to store in the primary key column of the generator table
Copyright © 2016. All rights reserved.