【Java】树形部门表设计咨询

有个部门表我是设计成了树形结构,有个pid是上级部门id,我想实现的是部门表和用户表关联,左侧是部门树、右边是部门下面的用户列表,我需要点击左侧部门的时候,右边展示当前部门及子部门下面的全部人员,不知道SQL需要怎么读取某个部门下面的全部子孙部门,不知道这种设计是否合理?
目前考虑的是部门表有个部门编码的字典,全表唯一,同时有个部门路径的字段,存储从根部门到父部门的路径,比如/01/02/03/。但是也考虑到一个问题,就是编辑部门的时候,如果修改部门编码,那下面的全部子部门也得同时修改部门路径字段?该如何修改?

回答

首先部门数据的设计我觉得你就记一个id和pid就行,/01/02/03/这样的路径拼接不是后端该干的事,后端只需要将所有部门数据全部给到前台,树形结构让前台自己去拼,后台只记父子级关系就行,这样的话部门信息的修改完全和树形结构脱离,事实上我们有和你这个完全一样的需求
【Java】树形部门表设计咨询
.......

那就数据库递归查询,mysql的话比较麻烦,Oracle有现成函数的。

搜索关键字 mysql 递归 教程量大保优。

修改的话,可以用写个存储过程批量操作

以上是 【Java】树形部门表设计咨询 的全部内容, 来源链接: utcz.com/a/87172.html

回到顶部