`
海滩拾贝壳的小孩
  • 浏览: 25050 次
社区版块
存档分类
最新评论

从数据库查询出一颗”目录树“

阅读更多


 数据库中有一张菜单表,要形成如上面所示的目录树的结构,该怎么办呢?

 

主要是一个迭代,代码如下:

 

/************

* 获得菜单项迭代集合

* @param pid                       某个菜单项的父节点nodekey

* @return List<TMenuset>           迭代后的菜单目录树集合

*/

public List<TMenuset> getMenuList(String pid) {

// TODO Auto-generated method stub

        List<TMenuset> listAll = new ArrayList<TMenuset>();

String sql = "select id,nodekey,nodename,nodetype from t_menuset  where pid = ? and enable = 1 order by orderid";

List<TMenuset> list = this.baseDao.getSimpleJdbcTemplate()

                     .query(sql, BeanPropertyRowMapper.newInstance(TMenuset.class), pid);

for (TMenuset node : list) {

//迭代

node.setChildren(this.getMenuList(node.getNodekey()));

listAll.add(node);

}

return listAll;

}

 

  • 描述: 图2
  • 大小: 74 KB
  • 大小: 32.3 KB
分享到:
评论

相关推荐

    list转map,list转tree,减少数据库查询次数

    例如,我们可以将一个包含部门及其员工的列表转换为一颗树,其中部门是节点,员工属于相应部门的子节点。 在Java中,可以使用`TreeSet`或自定义的树结构来实现。例如,如果我们有一个表示目录和文件的列表,可以...

    [其他类别]JSP无限级分类目录树_sorttree.zip

    【JSP无限级分类目录树】是一个在Web开发中常用的技术,主要应用于网站导航、商品分类、文章分类等场景,可以动态地展示层级关系清晰的数据结构。JSP(JavaServer Pages)是Java的一种动态网页技术,它允许开发者将...

    ORACLE数据库笔试题及答案.doc

    3. **在一颗二叉树上第5层的结点数最多是** - **解析**: 正确选项为 **B**。对于完全二叉树来说,第n层的最大节点数为2^(n-1)。因此,第5层的结点数最多为2^(5-1)=16。 4. **下面描述中,符合结构化程序设计风格...

    单表树结构

    每个区域都可以看作树的一个节点,它们通过父ID字段连接,形成一颗完整的树。例如,中国是根节点,下面有多个省份节点,如北京、上海,这些省份节点下又可以有城市节点,如北京市下有朝阳区、海淀区等。构建地区树时...

    树结构,增 删除 经典

    通过构建一颗员工树,每个节点代表一个员工,节点的状态表示其工作时间,增删改操作可以帮助管理者灵活调整员工的工作安排。 7. **Webroot**: - 在Web开发中,Webroot是网站的根目录,存放所有供Web服务器访问的...

    数据结构_二叉树_基本模板

    1. 文件系统:文件系统的目录结构可以视为一颗二叉树,每个目录节点可以有子目录或文件作为子节点。 2. 搜索引擎:二叉搜索树可以用于索引关键词,提高搜索效率。 3. 数据库索引:B树和B+树等变种二叉树广泛应用于...

    二叉树的相关算法合集,适合数据结构考研

    - 文件系统:文件目录结构可以视为一颗二叉树。 6. **相关算法**: - 前/中/后序遍历的递归和非递归实现。 - 判断一棵树是否为二叉搜索树(BST):BST中任意节点的左子树中的所有节点值小于该节点,右子树中的...

    数据结构c++

    - **索引**是数据库系统中的重要概念,用于快速定位数据,类似于书的目录,能提高查询效率。在C++中,可以使用哈希表或者二分查找树等数据结构来实现索引。 这些文档涵盖了数据结构中重要的话题,不仅包括基本概念...

    数据结构BinaryTree部分算法代码C++版

    - **文件系统**的目录结构可以看作一颗树,进行文件操作时涉及树的遍历。 - **编译器的语法分析**使用解析树,这是一种特殊形式的二叉树。 总的来说,这个资源提供了深入理解二叉树及其算法的实践平台,通过C++...

    Chapter-4-BiTree.zip_数据结构_PPT_

    1. 文件系统:目录结构可视为一颗二叉树,每个文件或目录是一个节点,链接关系对应父子关系。 2. 搜索引擎:倒排索引利用二叉搜索树实现快速查询。 3. 数据库:B树和B+树用于数据库索引,提高查询效率。 4. 编译器:...

    Linux操作系统基础教程

    Linux 操作系统基础教程 清华大学信息学院计算机系 ...从网上下载的,但是我不推荐易用这种方法得到 Linux,因为仅仅核心就有几十个 Mbit 的 数据量,而一个完整的发行版本大概都是 1Gbit 左右的数据量...

    J2EE扫盲之-揭开J2EE集群的神秘面纱

    这种方案通常涉及到一个中心化的JNDI服务器,所有节点都通过该服务器进行命名和目录服务的操作。 ##### 5.4 初始化对JNDI服务器的访问 为了确保所有节点都能正确地访问到中央JNDI服务器,通常需要在部署时进行特定...

    redis-windows-64-3.2.100.zip

    Redis是世界上最受欢迎的开源内存数据结构存储系统,它可以用作数据库、缓存和消息代理。在Windows环境下,Redis的使用可能会有所不同,因为它的主要开发和使用环境是Linux。本压缩包"redis-windows-64-3.2.100.zip...

    fileman2_ssd

    标题 "fileman2_ssd" 暗示我们可能正在处理一个与文件管理相关的项目,特别是与固态硬盘(SSD)优化或存储有关。PHP 是一种广泛使用的服务器端脚本语言,通常用于构建动态网站和应用程序。因此,我们可以推测 ...

Global site tag (gtag.js) - Google Analytics