产生原因:当使用hibernate查询一个对象的时候,如果Session关闭,再调用该对象关联的集合或者对象的时候,会产生懒加载异常! 解决方案:方案一:在Session关闭之前,查询对象关联的集合或者对象,所有在业务层的方法上添加: 1 public ElecUser fi ...
产生原因:
当使用hibernate查询一个对象的时候,如果Session关闭,再调用该对象关联的集合或者对象的时候,会产生懒加载异常!
解决方案:
方案一:
在Session关闭之前,查询对象关联的集合或者对象,所有在业务层的方法上添加:
1 public ElecUser findUserByLogonName(String name) { 2 3 String condition = " and o.logonName = ?"; 4 5 Object [] params = {name}; 6 7 List<ElecUser> list = elecUserDao.findCollectionByConditionNoPage(condition, params, null); 8 9 //数据库表中存在该用户,返回ElecUser对象10 11 ElecUser elecUser = null;12 13 if(list!=null && list.size()>0){14 15 elecUser = list.get(0);16 17 }18 19 /***20 21 * 解决懒加载异常22 23 除了OID之外的其他属性24 25 */26 27 elecUser.getElecRoles().size();28 29 return elecUser;30 31 }
原标题:hibernate的懒加载问题
关键词:Hibernate
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。