Есть ли разница в предоставлении @SequenceGenerator
аннотации на уровне class
и уровне Field
.
Уровень класса
@SequenceGenerator(name = "customerProfileSeq", sequenceName = "SEQ_CUSTOMER_PROFILE_KEY")
public class CustomerProfile {
Уровень поля
@Id
@SequenceGenerator(name = "CustomerProfileSeq", sequenceName = "SEQ_CUSTOMER_PROFILE_KEY")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "customerProfileSeq")
@Column(name = "ID")
private long id;
В нашем приложении SequenceGenerator
указано в объектах уровня класса, генерирующих последовательность с алгоритмом HILO. между числами есть разрыв. Объекты уровня поля генерируют нормальные значения приращения. Причина в том, что где мы упоминаем SequenceGenerator
?