介绍
小编给大家分享一下Java中如何实现递归查询部门树形结构数据,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
说明:在开发中,我们经常使用树形结构来展示菜单选项,如图:
那么我们在后端怎么去实现这样的一个功能呢?
1,数据库表:部门
2,编写sql映射语句
, & lt; select id=皊electDepartmentTrees", resultType=癱om.welb.entity.Department"比; ,,,,,,,select *,得到部门 ,,,,,,,& lt; where> ,,,,,,,,,,,& lt; if 测试=皍pdepartmentcode !=null"比; ,,,,,,,,,,,,,,,以及UpDepartmentCode=# {UpDepartmentCode} ,,,,,,,,,,,& lt;/if> ,,,,,,,,,, ,,,,,,,& lt;/where> ,,,& lt;/select>
3,创建实体类
public class Department { ,,,private String departmentcode;//部门的代码 ,,,private String departmentname;//部门名称 ,,,private String updepartmentcode=?”;//上级部门 ,,,private String departmentdesc;//部门描述 ,,,private List, childDept =new ArrayList();//部门信息树 ,,,public String getDepartmentcode (), { ,,,,,,,return departmentcode; ,,,} ,,,public void setDepartmentcode (String departmentcode), { ,,,,,,,this.departmentcode =, departmentcode ==, null ?, null :, departmentcode.trim (); ,,,} ,,,public String getDepartmentname (), { ,,,,,,,return departmentname; ,,,} ,,,public void setDepartmentname (String departmentname), { ,,,,,,,this.departmentname =, departmentname ==, null ?, null :, departmentname.trim (); ,,,} ,,,public String getUpdepartmentcode (), { ,,,,,,,return updepartmentcode; ,,,} ,,,public void setUpdepartmentcode (String updepartmentcode), { ,,,,,,,this.updepartmentcode =, updepartmentcode ==, null ?, null :, updepartmentcode.trim (); ,,,} ,,,public String getDepartmentdesc (), { ,,,,,,,return departmentdesc; ,,,} ,,,public void setDepartmentdesc (String departmentdesc), { ,,,,,,,this.departmentdesc =, departmentdesc ==, null ?, null :, departmentdesc.trim (); ,,,} ,,,public List , getChildDept (), { ,,,,,,,return childDept; ,,,} ,,,public void setChildDept (List 4,定义mapper
@Mapper public interface  DepartmentMapper { ,,,ListselectDepartmentTrees (Department 部门); ,,,} 5,定义服务业务层实现
@ service @ transactional public class  DepartmentImpl implements IDepartmentService  { ,,@ ,,,DepartmentMapper departmentMapper; ,,,, ,,@Override ,,,public List, selectDepartmentTrees (Department 部门),{ ,,,,,,,return departmentMapper.selectDepartmentTrees(部门); ,,,} } 6,控制层实现
@RestController @RequestMapping (“department") public class  DepartmentController { ,,@ null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullJava中如何实现递归查询部门树形结构数据