easyui 中 的同步树(3)------用递归写

原创 2016年05月31日 18:06:51

以上两篇都只能显示有限的节点,如果想要在前台显示无限的节点,就需要用到递归了。这篇文章是基于上一篇的。

我的思路是:

  1. 先找出根节点

  2. 再递归根节点(递归结束的条件是:当此节点没有子节点时,结束递归)


1.数据库表设计和实体类和上一篇是一样的

2.看下DAO层和controller层
第一步:先取得根节点

    public List getAllTree() {
        String hql = "from TAcademy where pid=(select min(pid) from TAcademy)";
        Query query = sessionFactory.getCurrentSession().createQuery(hql);
        return query.list();
    }

第二步:遍历根节点

@RequestMapping("/__getAllTree")
    public String __getAllTree(HttpServletRequest request,HttpServletResponse response)throws Exception{
        List<TAcademy> tree = treeService.getAllTree();
        List<TAcademy> allTree = digui(tree);
        JSONArray jn = JSONArray.fromObject(allTree);
        response.setContentType("text/html;charset=utf-8");
        response.getWriter().println(jn.toString());
        return null;
    }


    //递归形成专业树
    public List digui(List<TAcademy> tree){
        for (TAcademy academy : tree){
            if(treeService.getAcademyByPid(academy.getId())!=null){
                List<TAcademy> _tree = treeService.getAcademyByPid(academy.getId());
                academy.setChildren(_tree);
                digui(_tree);
            }
        }
        return tree;
    }

注意:其实不应该把数据库表中id设置问auto,如果设置成auto,那么就会在插入节点的时候出现问题。所以就在数据库中再增加一个字段。

版权声明:本文为博主原创文章,转载注明出处。 举报

相关文章推荐

jqueryeasyui递归实现用户组树

/** * 用户组管理_所有用户组树 * @param  * @return */ public List getUserAllGroupTree(){ List treeNodeList=new A...

EasyUI Tree递归方式获取JSON

最近需要用到EASYUI中的TREE功能,以前我是直接拼接成发现这样拼完之后在更改树后对树的刷新不是很理想,现改用JSON格式,首先分析TREE中JOSN格式如下:   1 2 3 4 5...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

easyui tree 前端 递归加载数据 查询树节

dwr 返回的数据格式 var treeData =[ {"id":"1200000100","parentId":"0","text":"苏州报表中心","staf...

jeasyui的树递归

大家都知道,树, 有很多枝干,枝干下有很多分支,分支下又有很多分支.....循环往复,如果我们想得到一棵对下的所有分支信息, 我们要通过一般的循环显然是很难实现的,因为你不知道每一个分去下会有多少分支...

easyui 中 的同步树(1)

1.先看一下easyUI,Tree组件要求的数据格式[{ "id":1, "text":"Folder1", "iconCls":"icon-save", "...

easyui 中 的同步树(2)

在上一篇文章中我写的那个同步树,我是使用了三张表。这次我是把三张表合成一张表,表名是t_academy,实体类名是TAcademy。1.先看下这个表结构 这个表只有三列,id不用解释,t...

easyUI同步树的详解

easyUI同步树的详解

easyUI tree 树形json的递归转换

解决了一个问题,做个记录.这里主要是json的转换,然后才是显示到tree上. 环境是eclipse+Maven+SpringMVC+hiberlate+easyuI(相关配置略) 开始吧! 第...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)