我想从数据库中获取完整的A对象,这包括包含C和D的B对象。
我有A B C D课程
class A
private B object
Class B
private List<C> objects
Class C
private List<D> objects
这就是我的所作所为:
Session session = sf.openSession();
String consulta = "select a from A a;
Query q = session.createQuery(consulta);
List<A> aaaa= q.list();
这是A与B,但B不包含C列表。
感谢您的帮助
答案 0 :(得分:0)
在查询中使用JOIN FETCH
一次性完成所有操作:
Query q = "select b from B b join fetch b.c";
这解决了您在懒惰地初始化所有内容时所需的N+1 problem。