带有春季HibernatedAosupport的懒惰加载?
-
23-09-2019 - |
题
问候,我正在使用Spring+Hibernate开发非网络。我的问题是HibernatedAosupport如何处理懒惰加载,因为在通话后DO DAO后,会话已关闭。
看看以下psuedo代码:
Dao就像:
CommonDao extends HibernateDaoSupport{
Family getFamilyById(String id);
SubFamily getSubFamily(String familyid,String subfamilyid);
}
域模型就像:
Family{
private List<SubFamily> subfamiles;
public List<SubFamily> getSubFamiles();
}
SubFamily{
private Family family;
public Family getFamily();
}
在应用程序中,我从app-context获得dao,并希望以下操作。这是可以做到的懒惰加载,因为AFAIK在每种方法之后(getfamilybyid(),getsubfamily())会话已关闭。
CommonDAO dao=//get bean from application context;
Family famA=dao.getFamilyById(familyid);
//
//Do some stuff
List<SubFamily> childrenA=fam.getSubFamiles();
SubFamily asubfamily=dao.getSubFamily(id,subfamilyid);
//
//Do some other stuff
Family famB=asubfamily.getFamily();
其他提示
更多的时间和调查似乎这是“正常”的行为。错误并不重要,尽我所能地抛弃;它甚至可能甚至是实际的实际错误。它看起来像办公室客户做一些乱砍他们所做的事情。
不隶属于 StackOverflow