有的時候安全起見須要修改ID的生成方式,有時候由於特定的緣由對ID字段須要自定義生成,更多的時候是比較無聊。 修改ID字段的默認值node
<!-- lang: groovy --> class Foo { static mapping = { id column: 'foo_id',generator:'hilo',params:[ table: 'keygen',column: 'next', max_lo: 1000 ] }
使用UUID方式生成ID安全
<!-- lang: groovy --> class Bar { String id static mapping = { id generator: 'assigned' } }
自定義ID的值閉包
<!-- lang: groovy --> class Foo implements Serializable { string code1,code2 static mapping = { id composite: [code1,code2] } }
確實夠無聊的。app
附帶一些問題解答: domain生成表以後會自動生成一個version字段,用來記錄版本號,若是不想要這個字段,能夠這麼設置一下dom
<!-- lang: groovy --> static mapping = { version false }
domain生成的表名默認和類的名字同樣,字段和屬性名同樣。能夠在domain中複寫默認的設置,全部的複寫都是在static mapping閉包中完成的,.net
<!-- lang: groovy --> class Todo { static mapping = { //這裏插入代碼 } }
複寫表名code
<!-- lang: groovy --> table 'todo_tbl'
複寫字段名文檔
<!-- lang: groovy --> columns { name column:'name_str' note column:'note_str' }
更詳細的能夠參考Grails1.2參考文檔速讀(9)get