我有一个表,并且已经定义了id,但是由于某些原因,我需要自动生成uuid列并且是唯一的。
我尝试了各种各样的注解,但似乎都不起作用:
@Column(columnDefinition = "BINARY(16)")
@GeneratedValue(generator = "uuid2")
@GenericGenerator(name = "uuid2", strategy = "org.hibernate.id.UUIDGenerator")
是否可以不将uuid定义为@Id?谢谢。
public class EntityClass {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private UUID uuid;
}
2条答案
按热度按时间gk7wooem1#
如果你使用一个序列,注解
@SequenceGenerator
应该对你有用,例如:qxsslcnc2#
其实我是这样做的:
在初始保存时,将设置UUID,并且它应该是唯一的,而不是null。