參考 良筆記 需要實作 基於業務需求,您會需要使用兩個欄位來作複合主鍵,例如在User資料表中,您也許會使用"name"與"phone"兩個欄位來定義複合主鍵。 假設您這麼建立User表格:
CREATE TABLE user (
name VARCHAR(100) NOT NULL, phone VARCHAR(50) NOT NULL, age INT, PRIMARY KEY(name, phone) ); 在表格中,"name"與"phone"被定義為複合主鍵,在映射時,您可以讓User類別直接帶有"name"與"phone"這兩個屬性,而 Hibernate要求複合主鍵類別要實作Serializable介面,並定義equals()與hashCode()方法: |
http://caterpillar.onlyfun.net/Gossip/HibernateGossip/CompactPK2.html
http://commons.apache.org/lang/download_lang.cgi