我有一张表,其中有 UUID (unique UUID String) 和 srNO(serial number) 等字段。我希望这两个字段都自动生成。如何使用休眠注释实现相同的效果。?
问问题
59 次
1 回答
0
据我所知,预计会在字段上找到@GeneratedValue
or注释。(将它们放在非 id 字段上不会有任何效果 - 和/或休眠会抱怨映射无效)。@GenericGenerator
@Id
另一种解决方案是在带有注释的方法中设置这些值,@PrePersist
这样您就不必调用assignUuid()
: hibernate 会在持久化实体之前为您执行此操作。
@Entity
public class MyEntityWithUUID {
@Id @GeneratedValue
private long id;
@NaturalId
private String uuid;
@PrePersist
public void assignUuid(){
uuid = generateUuid();
}
...
}
于 2013-11-14T15:11:53.817 回答