Ik had hetzelfde probleem. Het is gerelateerd aan de id-toewijzingsstrategieën van Hibernate. Als u GenerationType.SEQUENCE kiest , Hibernate gebruikt de HiLo-strategie die ID's standaard in blokken van 50 toewijst. U kunt dus expliciet allocationSize . instellen waarde als volgt:
@Id
@SequenceGenerator(name="pk_sequence",sequenceName="entity_id_seq", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="pk_sequence")
@Column(name="id", unique=true, nullable=false)
public int getId() {
return this.id;
}
Ik heb echter ook meningen gehoord dat het gebruik van de HiLo-strategie met allocationSize=1 is geen goede gewoonte. Sommige mensen raden aan om GenerationType.AUTO te gebruiken in plaats daarvan wanneer u te maken heeft met databasebeheerde reeksen
Bijwerken: Ik ging uiteindelijk met allocatieSize =1, en de dingen lijken nu te werken zoals ik verwacht. Mijn applicatie is zodanig dat ik toch niet echt blokken met ID's nodig heb, dus YMMV.