我有一個Hibernate APP,我們試圖用ZK實現Open Session in View Pattern
我有一個問題Hibernate爲每個線程創建一個會話並關閉它,但是在一個會話中我們有幾個操作[criteria和save或update]方法,我們開始使用更新方法,我們很快收到如果以下臭名昭著視圖合併中的Java Hibernate會話丟失更改?
NONUNIQUEOBJECTEXCEPTION
我們已經改變update()
到merge()
我的問題。
如果我有一個Student
類,並嘗試使用update[making sure is not in session avoid the exception]
更新學生,但後來在另一種方法要求學生再次不同於以前update
這個時候,我們應該merging
和merge()
方法被稱爲更新。我想知道什麼時候[flush][commit]
方法被稱爲第一個學生的變化是損失?這兩個學生的變化都可以嗎?怎麼了??
恐怕第一個student
的變化就是虧損!在這種情況下我能做些什麼?
非常感謝。
感謝提示gerrytan what pre - 是否意味着? – javiut
假設2個人正在獲取相同版本的實體對象,但是一個人先保存他/她的變化,然後再將另一個人的變化保存在另一個人之前,而不是此人已將其他變更先佔。這是鎖定技術有用的地方 – gerrytan