Hibernate同一个session中刷新对象和数据库里同步
//场景:使用了延迟加载, //所以使用了org.springframework.orm.hibernate3.support.OpenSessionInViewFilter //现在又一个request得到后台A有一个children属性,现在给A对象的children中添加一个child,调用的是action中的save方法(save中保存child). //当添加完成以后,在action中resultType为chain,跳转到list方法,list方法又查询了A对象的信息。这个时候如果不this.getSession().refresh(obj); //则查询不到A对象中包含child的信息. public Object getById() { Object obj = this.getSession().get(Object.class, id); this.getSession().flush();// 先把数据更新到数据库 this.getSession().refresh(obj);//把把对象更新为和数据库一致 return obj; }