在hibernate中为属性生成值

时间:2009-09-20 04:15:41

标签: hibernate

我想为一个属性生成一个唯一的guid / uuid值,该属性不是hibernate中的主键。换句话说,我想为备用主键生成值。

如何使用Hibernate执行此操作?

1 个答案:

答案 0 :(得分:1)

最简单的方法可能就是像对待pojo的其他“普通”属性一样对待这个备用键。每当你创建一个对象的新实例时,你就像

myinstance.setAlternateKey(UUID.randomUUID().toString());

如果你希望hibernate在将新对象保存到数据库时自动创建一个新的UUID,那么你可以使用hibernate的interceptors and event listeners,尤其是PreInsertEventListener来实现这一点。