Training, Workshops, Softwareentwicklung

Hibernate Tutorial

Sequence

Sequences sind aus Sicht von Hibernate meist die beste Lösung, um zahlen-basierte künstliche Schlüssel zu erzeugen.

CREATE TABLE CUSTOMER (
  ID        BIGINT NOT NULL,
  FIRSTNAME VARCHAR(255),
  LASTNAME  VARCHAR(255)
);

ALTER TABLE CUSTOMER
  ADD CONSTRAINT CUSTOMER_PK PRIMARY KEY (ID);


CREATE SEQUENCE CUSTOMER_SEQ
  START WITH 1;
@Entity
public class Customer {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "cust_gen") (1)
    @SequenceGenerator(name = "cust_gen", sequenceName = "customer_seq", allocationSize = 1) (2)
    private Long id;
1 @GeneratedValue legt fest, mit welchem SequenceGenerator die ID erzeugt werden soll.
2 @SequenceGenerator definiert die Sequence. Der Defaultwert für die allocationSize ist 50!