AdSense

網頁

2019/9/18

Spring Data JPA 合併欄位唯一限制 配置 composite unique constraint configuration

在Spring Data JPA的Entity實體類若對映的資料表有多欄位形成的唯一限制(composite unique constraint),則配置如下。


例如PRODUCT資料表的USER_IDORDER_ID兩個欄位合併構成了唯一限制, 則對映的實體類別Product可在@TableuniqueConstraints屬性設定限制的欄位名稱。

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint
    
@Entity
@Table(name = "PRODUCT"
  uniqueConstraints = {
    @UniqueConstraint(columnNames = {
      "USER_ID",
      "ORDER_ID" }) })
public class Product {

    @Id
    private Long id

    @Column(name = "USER_ID")
    private Long userId;

    @Column(name = "ORDER_ID")
    private Long orderId;

    // getters and setters...

}

參考:

沒有留言:

AdSense