实际上,这
SOMETHING_SEQ是您在hibernate配置中某处配置的序列的名称。并且
hibernate_sequence是数据库中的序列名称。在配置中,其外观如下图所示,
<sequence-generator name="SOMETHING_SEQ" sequence-name="hibernate_sequence" allocation-size="<any_number_value>"/>
您可以改为使用注释来完全跳过此配置。然后,您的
@SequenceGenerator注释将需要提供更多的参数。以下是示例。
@SequenceGenerator(name="SOMETHING_SEQ", sequenceName="hibernate_sequence", allocationSize=10)
例如,多个实体类将执行以下操作,
@Entitypublic class Entity1 { @Id @SequenceGenerator(name = "entity1Seq", sequenceName="ENTITY1_SEQ", allocationSize=1) @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "entity1Seq") @Column(name = "ID", nullable = false) private Long id; ... ...}@Entitypublic class Entity2 { @Id @SequenceGenerator(name = "entity2Seq", sequenceName="ENTITY2_SEQ", allocationSize=10) @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "entity2Seq") @Column(name = "ID", nullable = false) private Long id; ... ...}


