之前進入的問題,我想首先我想指出,我只需要使用JPA讀取我的模式 - 有史以來,數據庫中的數據都不會受到影響/更改。
多對多加入發行
我有許多一對多在我的架構稱爲ParamInParamClass
其中有包含的額外的非關鍵數據連接表。不過,在JPA中,我們通常會使用連接表多對多語法將ParamClass
表加入Param
,以獲取ParamClass
中Param
對象的列表。
所以,如果我用這個聯接語法:
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(
name="ParamInParamClass",
joinColumns = {
@JoinColumn(name = "FKParamClassID", referencedColumnName = "ID")},
inverseJoinColumns = {
@JoinColumn(name="FKParamID", referencedColumnName="ID")})
private List<Parameter> params;
在
ParamClass
,我就不能在ParamInParamClass
訪問DefaultOverride | MinimumOverride | MaximumOverride
。
我該如何解決這種情況?
檢查http://www.mkyong.com/hibernate/hibernate-many-to-many-example-join-table-extra-column-annotation/ – hovanessyan
謝謝,這看起來很有用。在休眠的基礎上使用JPA可以實現同樣的事情嗎? (我現在正在研究它,只是同時詢問)。 –
請參閱EclipseLink完成的本手冊,其中建議使用JPA方法來解決此問題:http://en.wikibooks.org/wiki/Java_Persistence/ManyToMany#Mapping_a_Join_Table_with_Additional_Columns – perissf