解决方法: 把数据访问层的更新方法中的update 改成merge就可以实现 public void update(Role r) { getHibernateTemplate().update(r); } public void update(Role r) { getHibernateTemplate().merge(r); }