如何在GORM中使用自定义id列

mko*_*yak 7 grails grails-orm

我有一个域对象,它有一个属性,我希望被GORM用作id,原因是不能保存这个对象的列表,如果数据库中已存在id ,我希望更新现有行

让我们假设我想要的属性PK作为 listId

我见过几种方法,哪种方法最好?

1:

id generator: 'identity', column: 'listId'
Run Code Online (Sandbox Code Playgroud)

2:

  static mapping = {
    id generator:'assigned'
  }
  def getKey = {
    return listId;
  }
Run Code Online (Sandbox Code Playgroud)

还是完全不同的东西?

Aar*_*ers 9

  static mapping = {
    id generator: 'assigned', name: "listId", type: 'string'
  }
Run Code Online (Sandbox Code Playgroud)