其實,具體的解決方法很簡單,
将持久層: hibernateTemplate.update(chidClass);
改為: hibernateTemplate.merge(chidClass);
原因: 使用 hibernate 3 的 merge 方法. session.merge(entity)即可,它會在 session 緩存中找到持久化對象,把新對象的屬性賦過去,再儲存原session中的持久化對象。
如果在session或資料庫中沒有的對象,用merge方法的話,它也能夠幫你把記錄 insert 到表中,相當于 save 方法。