有三个对象:班级,小组,学生。
“班组”和“小组”是一对多,“小组”和“学生”是一对多。
假设这个“班级”有3个“小组”(A,B,C), 有9个“学生”(1,2,3属于A组 4,5,6属于B组 7,8,9属于C组)。
现在想通过一次加载,只加载“B组”的“学生6”。
也就是说“班级”的“小组”set中,只有“小组”B这个对象,
而“小组”B这个对象的“学生”set中,只有“学生”6这个对象。
请问用hibernate语句怎么实现?
[b]问题补充:[/b]
我想要得到一个“班级”对象,“班级”对象的“小组”set中只有B小组一个对象,“小组”对象的学生set中,只有学生6这一个对象。
我觉得不建议新手(sql语句不好的) 用高级链接来查询, 直接rom Student where id = 6
这样好理解点 呵呵
那你是想得到一个班级对象,小组对象还是学生对象呢?
如果是要某个学生对象,直接from Student where id = 6 这样啊
假定 Classes(班级) Groups(小组) Student(学生)
类似下面这句
[code="java"]from Classes as c left outer join c.groups as g left outer join g.students as s where s.id = 6[/code]
[code="java"]from Classes as c left outer join c.groups as g left outer join g.students as s where g.id = b and s.id = 6 [/code]
这样应该可以了
朋友,问题要自动关闭啦,结分哦