NutzCN Logo
问答 fetchLinks 多层查询怎么实现
发布于 2531天前 作者 qq_1a8953b7 1808 次浏览 复制 上一个帖子 下一个帖子
标签:

@Table("t_menu")
public class Menu {
private int id;
private String name;
@Column("pid")
private int parentId;
@Column("ct")
private long createTime;
@Column("ut")
private long updateTime;
@One(target=Menu.class, field="parentId")
private Menu parentMenu;
@Many(target=Menu.class, field="parentId")
private List subMenus;
}
List top = dao().query(Menu.class, Cnd.where("parentId", "=", 0));
top = dao().fetchLinks(top, null);

多层查询如何实现?

6 回复

想封装一个方法呢??实现无限层的fetchLinks??

嗯 是的 想生成树形结构的json

如果单纯是这个类的话,写个递归方法咯

能给个例子不?,实在写不出来 才发的帖

public void deepFetchLinks(Menu m){
       if(m==null) return;
       dao.fetchLinks(m,null);
       deepFetchLinks(m.getParentMenu());
       deepFetchLinks(m.getSubMemus());
}
public void deepFetchLinks(List<Menu> list){
    if(list==null) return;
    for(Menu m:list) deepFetchLinks(m);

}

添加回复
请先登陆
回到顶部