我想为一个属性生成一个唯一的guid / uuid值,该属性不是hibernate中的主键。换句话说,我想为备用主键生成值。
如何使用Hibernate执行此操作?
答案 0 :(得分:1)
最简单的方法可能就是像对待pojo的其他“普通”属性一样对待这个备用键。每当你创建一个对象的新实例时,你就像
myinstance.setAlternateKey(UUID.randomUUID().toString());
如果你希望hibernate在将新对象保存到数据库时自动创建一个新的UUID,那么你可以使用hibernate的interceptors and event listeners,尤其是PreInsertEventListener来实现这一点。