簡體   English   中英

休眠:主鍵由外鍵構成

[英]Hibernate: Primary key made of foreign keys

所以我有“ OrderItem”類。 它的主鍵假定由“ productID”和“ orderID”(來自另一個實體的FK引用)組成。 如何使用注釋進行設置?

提前致謝!!!!

:ordersItems
屬性 :productID(PK-PK)------------------>產品
orderID(PK-PK)------------------>訂單

鑒於這些實體:

@Entity
@Table(name="products")
public class Product {

    @Id
    @Column(name="productID")
    private Integer id;
    private String description;
}


@Entity
@Table(name="orders")
public class Order{

    @Id
    private int orderID;

    @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
    @JoinColumn(name="orderID")
    private List<OrderItem> items;
}

@Entity
@Table(name="ordersItems")
public class OrderItem{

    @ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )
    @JoinColumn(name="productID")
    private Product product;
    private int quantity;
    private float price;
}

您將必須創建一個可嵌入的域類,該類僅在主鍵中由外鍵構建的字段中。 注釋在外鍵域類的類級別@Embeddable上。

這是EmbeddedId的文檔

http://docs.oracle.com/javaee/6/api/javax/persistence/EmbeddedId.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM