`
jslfl
  • 浏览: 321134 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

递归删除树

阅读更多
用来删除树型结构数据,如菜单,文件目录等

为了减少对象的创建,直接把数据库操作dao做参数传入递归
dao中做根据ID删除数据的操作


/**
     * 递归删除
     * @param id
     * @param dao
     */
    private void recursionDel(String id,DAO dao){
    //得到所有子节点
    List<Folder> subFolders = dao.getSubFolder(id);
   
    //如果有子节点,删除所有子节点
    if(subFolders != null && subFolders.size()>0){
    for(Folderf : subFolders){
    recursionDel(f.getId(),dao);//递归删除子目录及更深的子目录
    }
    }
    //删除本身目录
    dao.delByID(id);
    }
分享到:
评论

相关推荐

    使用递归删除树形结构的所有子节点(java和mysql实现)

    使用递归删除树形结构的所有子节点(java和mysql实现) 在树形结构中删除某个父节点时,需要递归删除其所有子节点,以避免遗留冗余数据。下面将为大家介绍使用 Java 和 MySQL 实现递归删除树形结构的所有子节点的...

    递归删除一个节点以及该节点下的全部节点示例_.docx

    在本示例中,我们看到的是一种递归删除操作,主要用于数据库中的部门管理。递归在这里被用来删除一个部门及其所有子部门。下面将详细解释这段代码的工作原理和递归在其中的作用。 首先,`del` 函数接受一个参数 `$...

    递归删除文件或子目录

    在这个场景中,"递归删除文件或子目录"指的是编写一个程序,它能够遍历并删除指定目录下的所有文件和子目录,包括它们的子孙目录,但会跳过那些被标记为只读属性的文件和目录。这个功能在清理或整理文件系统时非常...

    用递归实现C#树形结构

    此外,递归还可以用于其他操作,如查找特定值的节点、插入新节点、删除节点等。例如,查找一个值可能涉及递归地检查当前节点的值以及所有子节点的值: ```csharp public TreeNode&lt;T&gt; FindNode(T value, TreeNode&lt;T&gt;...

    递归删除指定类型的文件夹,递归删除指定类型的文件

    在IT领域,递归删除是一种常见且强大的操作,主要用于清理特定类型或结构的文件和文件夹。本主题主要探讨如何实现“递归删除指定类型的文件夹”和“递归删除指定类型的文件”,以及如何在文件夹内部进行深度搜索和...

    递归删除.svn

    标题中的“递归删除.svn”指的是在编程或文件管理操作中,如何使用递归方法来删除一个项目或目录下的所有.SVN子目录。.SVN是Subversion版本控制系统的一个隐藏目录,它存储了版本控制的相关信息。在某些情况下,用户...

    递归操作树

    它适用于许多树形结构的操作,如查找、遍历、复制和删除节点等。然而,需要注意的是,递归可能会导致堆栈溢出,特别是当树的深度很大时。为避免这种情况,可以考虑使用迭代方法,如使用队列进行广度优先遍历。 总之...

    C# 递归生成树_TreeView

    本示例中的“C# 递归生成树型菜单”着重讲解如何使用递归方法来动态构建一个`TreeView`控件,结合数据库数据,创建可运行的树形菜单。下面我们将详细探讨这个主题。 1. **递归的理解与应用**: 递归是编程中的一个...

    递归删除,复制文件夹

    递归删除策略就是从最深层的子文件或文件夹开始,逐级向上,直到删除整个文件夹结构。 1. **初始化**:指定要删除的根文件夹。 2. **递归调用**:对于根文件夹下的每个子文件或子文件夹,如果是个文件,直接删除;...

    递归删除指定文件例子

    2. **谨慎操作**:递归删除可能会清除整个目录树,所以在运行脚本前,先确认目标路径无误。 3. **权限**:确认脚本或程序有足够的权限访问和删除文件,尤其是系统或受保护的目录。 4. **测试**:在实际操作前,在一...

    递归删除一个节点以及该节点下的所有节点示例

    递归删除是一个在计算机科学中常见的概念,主要用于处理具有树状结构的数据。在实际应用中,例如部门管理、文件系统管理等方面,经常需要删除一个节点及其下属的所有节点。这就需要使用到递归删除技术。 在给出的...

    递归删除列表文件以外的所有文件源代码.rar

    在这个"递归删除列表文件以外的所有文件源代码"的例子中,我们可以看到是用Delphi语言实现的。 Delphi是一种基于Object Pascal的集成开发环境(IDE),它提供了强大的Windows应用程序开发能力。源码中可能包含以下...

    java递归树型结构通用数据库

    当删除一个部门时,需要递归删除该部门下的所有子部门,以避免出现部门之间的循环引用。该功能使用Java语言实现,具有良好的可扩展性和可维护性。 4. 部门信息查询接口设计 在Java递归树型结构通用数据库中,提供...

    递归-----动态树实现递归

    与静态树不同,它的节点可以在运行时添加、删除或移动。这种数据结构广泛应用于数据挖掘、图形渲染、搜索算法以及许多其他计算机科学领域。 递归在动态树中的应用主要体现在以下几个方面: 1. **树的遍历**:常见...

    使用递归和dom遍历dom树形结构

    ### 使用递归与DOM遍历DOM树形结构 在现代Web开发中,处理XML文档是一项常见任务。DOM(Document Object Model)是一种广泛采用的技术,用于表示XML或HTML文档的结构,使得开发者能够轻松地访问、修改文档中的元素...

    【数据结构】——搜索二叉树的插入,查找和删除(递归&非递归)

    递归删除通常涉及替换节点的查找,而非递归删除则需要维护一个栈来跟踪路径,以便找到合适的替代节点并更新路径上的父节点。 在提供的代码中,可能包含了对这三种操作的实现,包括递归和非递归方法。使用VS2008...

    二叉树的构造

    该函数将递归删除树中的每个节点,并释放相应的内存空间。 树的交换 树的交换是指交换左右子树的过程。我们可以通过`Exchange`函数来实现树的交换。该函数将交换左右子树,并更新相应的指针。 叶子节点的计算 ...

    递归算法应用:删除某一个节点的子树算法

    在数据结构中,递归算法广泛应用于树形结构的操作,例如二叉树的遍历、搜索、插入、删除等操作。今天,我们将讨论递归算法在删除某一个节点的子树算法中的应用。 问题描述:在二叉树中,删除值为 x 的节点,并删除...

    运用递归生成树形结构 Treeview

    本教程将详细解释如何运用递归方法生成树形结构,使得数据能够以视觉上易于理解的树状布局呈现。 一、.NET Treeview简介 .NET Treeview控件是Windows Forms中的一员,它允许开发人员在用户界面中展示分层的数据结构...

    SpringBoot + MyBatis Plus 递归获取树形菜单信息列表(附源码)

    最后,提供的源码应该包括了上述的SQL查询、递归构建树形结构的代码,以及SpringBoot应用的配置和路由设置。通过这种方式,开发者可以快速理解和复用这个功能。 总之,通过SpringBoot与MyBatis Plus的结合,我们...

Global site tag (gtag.js) - Google Analytics