2012-01-24 36 views
0

我有以下類別:JDO和應用程序引擎:定義主鍵作爲子類成員

@PersistenceCapable 
class Store { 

    // ??? 
    User admin; 
    ... 

    @Persistent 
    @Element(dependent = true) 
    List<Item> items; 

} 

@PersistenceCapable 
class User { 

    @PrimaryKey 
    @Persistent 
    String email; 

} 

@PersistenceCapable 
class Item { 

    @PrimaryKey 
    @Persistent 
    String itemCode; 

    ... 

} 

我要讓admin.email存儲實體的主鍵。 這是可能與應用程序引擎上的JDO?我應該如何繼續?

感謝你的幫助,

約翰Goche的

回答

0

你可以將「管理」的PK簡單地將其標記爲PK和定義存儲一個PK類,以下爲「複合身份的DataNucleus將文檔「(因爲admin.email是用戶的PK,那麼它是相同的)

+0

我看過http://www.datanucleus.org/products/accessplatform/jdo/orm/compound_identity.html但我我仍然有些困惑。我是否需要創建一個名爲PK的內部靜態類?我如何用註釋而不是XML來做到這一點。商店和用戶之間的關係在我個人的情況下是1-1。 – johngoche9999

+1

你創建一個PK類......不管它是內部的還是單獨的類都取決於你。有什麼註釋與PK課有關?你只需將Store類的「objectid-class」標記爲這個PK類 – DataNucleus

+0

對不起,如果我沒有完全遵循,你能夠發佈一些代碼嗎?什麼是PK類? – johngoche9999

相關問題