2012-09-12 38 views
0

我有這些表(具有這些主鍵):Hibernate映射多到許多與合成關鍵

資源 - idResource(PK) - idResLanguage(PK)

標籤 - IDTAG(PK)

Resources_Tags - idResource(PK) - IDTAG(PK)

有沒有什麼辦法映射這些表只能引用Resources_Tags表中的字段「idResource」?

我問這是因爲,如果我不把idResLanguage在Resources_Tags表中,我做Hibernate的逆向工程在Eclipse上的時候,它拋出這個錯誤:

「MappingException:外鍵必須與引用的主鍵具有相同的列數「

回答

0

如果idResource足以唯一標識資源,那麼它應該是主鍵,並且idResLanguage不應該是主鍵的一部分。

如果不是足以唯一標識一個資源,那麼你需要在它的連接表,否則它不會有一個標籤一個資源映射,但有一個標籤的資源。