Sobes.tech
Junior — Middle
96

Come si crea una chiave primaria composta in Hibernate?

Le aziende dove è stato chiesto
Северсталь-ИфокомСеверсталь-Ифоком

Risposta dell'AI

sobes.tech AI

В Hibernate составной первичный ключ создается с помощью аннотации @Embeddable для класса, описывающего ключ, и @EmbeddedId в сущности.

Пример:

@Embeddable
public class OrderId implements Serializable {
    private Long orderId;
    private Long productId;

    // конструкторы, геттеры, сеттеры, equals и hashCode
}

@Entity
public class Order {
    @EmbeddedId
    private OrderId id;

    private int quantity;

    // остальные поля, геттеры, сеттеры
}

Таким образом, класс с составным ключом должен быть сериализуемым и переопределять equals и hashCode. В сущности используется поле с аннотацией @EmbeddedId.