在service层的for循环里调用dao层方法,执行this.getHibernateTemplate().save()语句保存数据,居然出现保存不全,比如本意是保存5个数据,却只保存了3个,仔细看了hql语句,原来每次执行插入语句时是在下一次循环的时候,查了半天资料,解决办法如下
getSession().save(rolepower);
getSession().flush();
getSession().clear();
原来是hibernate缓存作怪,清空就可以了
getSession().save(rolepower);
getSession().flush();
getSession().clear();
原来是hibernate缓存作怪,清空就可以了