我使用的是struts+hibernate+spring
String sql="from Task  ";
List list=taskdao.queryTask(sql);
System.out.println("list-------"+list);

for(int i=0;i<list.size();i++){
Task t=(Task)list.get(i);
TaskStruct taskStruct=taskstructdao.findById(t.getTASK_ID());
System.out.println("taskStruct--"+taskStruct.getFATHER_ID());
if(t.getTASK_ID().equals(taskStruct.getTASK_ID())){
TreeModel tree = new TreeModel();
tree.setNODE_ID(t.getTASK_ID());
tree.setNODE_FATHERID(taskStruct.getFATHER_ID());
tree.setNODE_NAME(t.getTASK_NAME());
ary.add(tree);
}
}
这样的也可以达到上面第一个帖子的效果,但是如果返回Task对象有一千条,可要循环1000条
这样效率很低哦,  挺说hql可以直接用一条语句就可以实现上面的效果了,怎么实现呢