[英]hibernate issues with composite primary key
我在使用Hibernate時遇到了一些問題。 我們需要將一個對象及其子對象一起保存。 每個孩子都有一個復合主鍵。 按鍵的一個屬性將由觸發器插入。 在調用saveOrUpdate(Object)
之前,將從程序中設置另一個屬性。
但是我們無法保存該對象。 Hibernate引發異常Same identifier is already exists in the session
。
我嘗試了session.clear()
,但是遇到了同樣的異常。 當我嘗試session.merge()
,只有最后一個孩子被保存,其他孩子被忽略。
如果不再需要在同一Hibernate Session中保存對象,則可以在使用Session.evict()
保存之后分離它們:
// children is the collection of detached children, ready to save
for (Child child : children){
session.save(child);
session.evict(child);
}
另外,在Hibernate論壇中的該條目可能會有所幫助: 在Insert Trigger和ID generator之前 。 有一個AbstractPostInsertGenerator
的實現,可以將其集成以滿足您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.