Java 递归查询该部门,及其下属部门,所有用户:

Set<User> userSet 作为传入参数,并将其作为返回值,
随着递归查询,执行 userSet.addAll(users);
userSet 逐渐被添加。
public Set<User> queryDeptByParentDept(String departmentId,Set<User> userSet){//根据所选择的部门id--selectDepartment,获取Department对象Department selectDepartment = departmentDao.findOne(departmentId);//获取该部门中的所有用户Set<User> users = selectDepartment.getUsers();//将获得的所有用户,添加到userSet中userSet.addAll(users);//如果该部门有子部门,获取子部门,查询该子部门中的所有用户,//并传入userSet,将查询结果,存入到userSet中,将其返回if (selectDepartment.getChildrenDepartment().size() > 0) {Set<Department> childrenDepartments = selectDepartment.getChildrenDepartment();if (childrenDepartments != null && !childrenDepartments.isEmpty()) {for (Department dep : childrenDepartments) {queryDeptByParentDept(dep.getId(),userSet);}}}return userSet;}

调用方法:

//查询该部门,及其下属部门,所有用户
Set<User> userSet=new HashSet<>();
//传入一个空的userSet,将查询的结果集合userSet返回
Set<User> users = queryDeptByParentDept(department,userSet);if (users != null && !users.isEmpty()) {for (User user : users) {String applyUserName = user.getName();System.out.println(applyUserName);}
}

参考:Java 递归查询所有下级部门 - 微酷网

递归查询父级所有下级,查询树形结构_Clackson的博客-CSDN博客_递归遍历所有下级

Java 递归查询该部门,及其下属部门,所有用户相关推荐

  1. java用户里获取部门id_javaWeb开发,根据部门ID查询该部门和下属所有部门的ID集合...

    由于博主太菜,就直接上图了,结果是正确的. 1:首先看下数据库 2:对应的实体类 3:mapper.xml和mapper.java 再xml中根据限定条件查询出当前所有的部门集合 4:在service ...

  2. java递归查询公司下所有部门及子部门

    业务要求: 查询公司下所有子部门及子部门: 原型: 1.创建公司和部门实体: CompanyVos: package com.suwei.sysMng.vo;   import java.io.Ser ...

  3. java代码递归查找部门和子部门id

    1.根据传入部门的id,查找所有子部门id,返回包含传入id和子部门id集合 2.不推荐使用,我是因为数据量小,而且访问此方法的请求少才这样写 3.推荐数据库级别sql的递归查询(我没有成功实现才这样 ...

  4. 不确定下钻数的循环(部门下所属部门 多层下钻)

    //下钻5层部门,无法动态确定 只能处理5层部门for (TSDepart tsd : departsList) {departsId.add(tsd.getId());List<TSDepar ...

  5. 各大互联网公司都有哪些部门?核心部门又是什么?一文全知道!

    近期裁员消息满天飞,又是金三银四季,很多同学在准备春招和暑期实习. 作为应届毕业生的我们一定要好好珍惜应届毕业生的身份! 而作为互联网行业的我们,毕业后的第一份工作是十分重要的,关乎未来的职业发展,所 ...

  6. mysql查询多个部门的子部门,数据库(多表查询,子查询)

    1.笛卡尔集 1.什么是笛卡尔集 假设集合A={a,b},集合B={0,1,2}, 则两个集合的笛卡尔集为 {(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)} 可以拓展到多个集 ...

  7. 软件版本号命名规范_电影录音部门和剪辑部门交互规范的参考

    本文原载于公众号「后期骗局」,作者黄烁 经作者同意转载 黄烁老师非常谦虚的称之为参考,但其实这都是一线工作人员多年血泪总结出的经验教训之谈,也是大部分工业化制作的基本流程要求,每一个字背后不知有多少熬 ...

  8. 一个用户的上级部门的上级部门对用户也有修改权限,怎么判断?

    山泉  13:06:17 一个用户的 上级部门对用户有修改权限 一个用户的上级部门的上级部门对用户也有修改权限,怎么判断? 山泉  13:06:30 主要是第二 山泉  13:06:45 怎么设置? ...

  9. “我来管管看”系列:质检部门与生产部门信息不对称怎么办?

    一个业务,如果"我来管管看",那会怎样?本文为"我来管管看"--先进制造研究系列专题文章之一,文中提到的质检部门与生产部门对接的问题,您在企业是否也遇到?您的解 ...

最新文章

  1. iOS6.0 xcode4.5 设置横屏
  2. 百款APP嵌入 KeyMob移动广告聚合平台发布十周
  3. 需要排序的最短子数组长度
  4. u盘安装linux启动报错,U盘安装centos7,启动报错
  5. 盘点:最值得托付终身的星座
  6. Linux学习之服务器搭建——DHCP服务器
  7. 美团点评2020年测试工程师笔试题
  8. 小白记事本--学不明白还怕忘记指针--loading未完待续
  9. Office系列软件之间不兼容以及office修复
  10. ArcGis拓扑——规则、概念与要点
  11. python发邮件被认定为垃圾邮件_【python文本分类】20行代码识别垃圾邮件
  12. [BZOJ]1228: [SDOI2009]ED 博弈SG
  13. 数据可视化分析平台开源方案集锦
  14. 拼多多产品怎么引流?拼多多商品怎么引更多的流量?
  15. win10从零安装配置pytorch全过程
  16. js内置对象处理-打印学生成绩单
  17. Android获取的MP3音乐的专辑封面图片
  18. python关键词挖掘_关键词挖掘,挖掘关键词的方法
  19. Laya1.0Matter.js之布
  20. nodejs的下载与安装

热门文章

  1. PaddleDetection研究报告——百度目标检测PP-YOLOE论文解读+实践应用
  2. 蓝牙耳机什么牌子好又便宜?学生党蓝牙耳机性价比排行榜
  3. [附源码]Python计算机毕业设计SSM基于框架的家用电器销售管理(程序+LW)
  4. 玩 osu!mania 的一些思考
  5. matlab ----bwboundaries---bwmorph-----bwareaopen
  6. imopen和bwmorph_形态学笔记
  7. html css xml,XML HTML CSS理论知识复习
  8. Excel表格在线转换为markdown格式的方法
  9. 无损音频wav音乐格式怎么转换成mp3格式 1
  10. matlab的find()函数的一些用法(快速查找符合条件的值)