Como criar chaves primárias do tipo UUID com Grails
Devo confessar, detesto chaves primárias do tipo auto incrementais. Sempre preferi utilizar UUID: podem ocupar mais espaço em armazenamento em disco, mas são ideais quando lidamos com aplicações paralelizadas ou mesmo quando queremos ter um controle maior sobre o valor que devemos armazenar nestes campos.
Ao iniciar meu contato com Grails, fiquei um pouco decepcionado ao me deparar com a utilização padrão de campos do tipo auto incrementais, porém este problema pode ser resolvido de uma maneira extremamente simples: basta apenas customizar o mapeamento objeto relacional da classe, tal como faço no código abaixo:
class AmandoUUID {
String id // Defina o campo chave como String.
// Repare no mapeamento: basta definir o generator uuid!
static mapping = {
id generator:'uuid'
}
}
Simples, não acha?
Leave a Reply
Pingback
Sep 8th 2008 • 08:09
by Grails: acessando bases de dados legadas. — /dev/Kico
[...] No caso, primeiro definimos qual o nome da coluna na qual os dados estão armazenados. Em seguida, definimos qual o algoritmo usado na geração destes valores. Em nosso caso, o algoritmo UUID (já inclusive escrevi sobre isto aqui). [...]