2014-01-10 42 views
0

我有兩個實體TravelAssurance與@OneToOne關係。兩個實體必須通過與Save貼圖相同的接口創建。我用這個方法:如何使@OneToOne關係同時存在兩個實體?

ManagedBean.java:

public String add(){ 
    newTravel = manager.createTravel(arrivalDate, returnDate, lengthToStay, addToStay, visitPurpose); 
    newAssurance = manager.createAssurance(company, assuranceStart, assuranceEnd, newTravel); 
    return "Travellers"; 
} 

在數據庫中,我發現關聯到AssuranceTravel_IdAssurance_IdTravelsnull

回答

1

看起來您的關係不是雙邊的(即您不使用mappedBy註釋屬性)。如果您使用了一個,則只有一列(Travel_IdAssurance_Id,取決於您放置mappedBy的位置)。

還可以考慮在同一個事務中進行保存,例如使用相同的管理器方法並設置關係的兩端。

相關問題