class Book {
String id
String title
static mapping = {
id generator: 'uuid'
}
}
ID
目的
自定义针对域类的标识符的生成方式
示例
说明
用法:id(map)
参数
-
generator
(可选)- 要使用的生成器名称。可以是increment
、identity
、sequence
、seqhilo
、uuid
、uuid2
、assigned
、select
、foreign
、sequence-identity
、enhanced-sequence
或enhanced-table
。请参阅 Hibernate 参考文档 了解更多信息。
Hibernate 5 中已移除了 hilo 生成器。请参阅 Hibernate 5 Migration Guide。 |
-
composite
(可选)- 获取构成复合标识符的属性名称列表 -
name
(可选)- 作为标识符使用的属性名称 -
params
(可选)- 传递给已定义标识生成器的任何参数 -
column
(可选)- 将标识符映射到的列名称。其他 column 定义属性也可使用。
默认情况下,GORM 使用本机策略为每个实体生成数据库标识符(通常是自增列或序列)。可以通过 id
方法的 generator
参数更改此行为。
static mapping = {
id generator: 'uuid'
}
还可以使用该方法来定义复合标识符
static mapping = {
id composite: ['title', 'author']
}
或更改定义标识符的属性名
static mapping = {
id name: 'title'
}
还可以更改列定义
static mapping = {
id column: 'book_id', type: 'integer'
}
请参阅用户指南中有关 自定义数据库标识 的章节了解更多信息。