org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1(2)
1.主键是自动增长性,在添加时也会出现错误。
2.unsaved-value是个很重要的属性。Hibernate通过这个属性来判断一个对象应该save还是update,如果这个
对象的id是unsaved-value的话,那说明这个对象不是 persistence object要save(insert);如果id是非
unsaved-value的话,那说明这个对象是persistence object(数据库中已存在),只要update就行了。
你可以Debug跟一下你的代码,看看在session.update(obj);
的时候,obj的主键的值是不是按你定义的那样,obj可以被hibernate认为是一个已经持久化在数据库里的对象