javadoc说
可以是唯一的生成器名称 由一个或多个类引用 是主键的生成器 值
但是它的注释放在@Entity之上,所以我不理解这个推理。
我可以在其他@Entity中定义的@Entity @SequenceGenerator中使用吗?
答案 0 :(得分:6)
这个想法是多个实体可能想要共享密钥空间。
例如,如果您有两个实体Foo
和Bar
,则您希望避免同时具有ID为1的Foo
和ID为1的Bar
。这样做是为name
注释指定相同的@SequenceGenerator
。
答案 1 :(得分:0)
在@GeneratedValue注释中使用生成器时,请按名称引用它。这就是使用该名称的原因。序列生成器可以在GeneratedValue注释中声明,但是他们另有决定。它使您可以在多个字段上使用相同的Generator,甚至可以在实体之间共享它们。当你不使用这个功能时,它当然是一些开销。