0
我正在使用與共享主鍵的一對一映射。休眠一對一映射錯誤
我的映射是類似的東西 -
<class name="EmployeeDetails" table="EMPLOYEE_DETAILS" >
<cache usage="nonstrict-read-write"/>
<id name="employeeId" type="java.lang.Long">
<column name="EMPLOYEE_ID" precision="12" scale="0" />
<generator class="foreign">
<param name="property">employee</param>
</generator>
</id>
<property name="score" type="java.math.BigDecimal" update="true">
<column name="SCORE" />
</property>
<one-to-one name="employee" class="Employee" constrained="true"/>
</class>
和Employee.hbm.xml我有
<one-to-one name="employeeDetails" class="EmployeeDetails" cascade="all,delete-orphan"></one-to-one>
我只設置employee.setEmployeeDetails(new EmployeeDetails(score));
並嘗試保存員工。 查詢觸發了更新查詢,但EMPLOYEE_DETAILS表中沒有記錄。我希望它被插入。我怎樣才能做到這一點?如果我使用級聯級聯=「save-update」,我不會收到任何錯誤。如果我使用級聯=「保存更新」我得到一個錯誤No row with the given identifier exists
但這兩次它只觸發更新查詢。
您可以嘗試與http://www.mkyong.com/hibernate/hibernate-one-to-one-relationship-example/進行比較 – 2015-03-03 11:19:13