树形结构的向下遍历和向上遍历

树形结构的向下遍历和向上遍历
树形结构,向下遍历,得到全部的id
userId 为该数据的主键id
parent_id为该数据的⽗id
⽅法⼀:数据库操作,创建定义的递归⽅法(不推荐,⾃⼰弄的话⽆所谓,但是会给维护或者发布会有⼀定的⿇烦,因为发布换数据库了,可能就没有这个⾃定义的函数,⼜需要写⼀次。)
DROP FUNCTION IF EXISTS get_child_list;
DELIMITER ;;
CREATE FUNCTION get_child_list(areaId VARCHAR(250))
RETURNS VARCHAR(4000)
BEGIN
DECLARE sTemp VARCHAR(4000);灶神之妻
商品房屋租赁管理办法DECLARE sTempChd VARCHAR(4000);
SET sTemp='$';
SET sTempChd = CAST(areaId AS CHAR);
WHILE sTempChd IS NOT NULL DO
SET sTemp= CONCAT(sTemp,',',sTempChd);
SELECT GROUP_CONCAT(userId) INTO sTempChd FROM user WHERE FIND_IN_SET(parent_id,sTempChd)>0;
END WHILE;
RETURN sTemp;
END
;;
DELIMITER ;
然后mybatis中写⼊
SELECT * FROM user WHERE FIND_IN_SET(userId,get_child_list('userId参数'))
⽅法⼆:
@Override
public void getChildrenPlatformRecursion(Long userId){
List<User> userList = userMapper.selectList(new QueryWrapper<>());
Map<String, Object> map =new HashMap<>();
for(User user:userList){
if(!ainsKey(String.ParentId()))){
List list =new ArrayList();
list.add(String.UserId()));
map.put(String.ParentId()),list);
}else{
List list=((String.ParentId()));
list.add(String.UserId()));
map.put(String.ParentId()),list);
}一幅壮锦的故事
}
recursion(map,String.valueOf(userId));
}
山西省物理学会public void recursion(Map<String, Object> map,String parent){
List<String> list=((parent);
if(null!= list && list.size()!=0){
for(String key:list){
recursion(map,key);
}
}
System.out.println(parent);
}
树形结构,向上遍历,得到全部的id
public List getId(Long userId ){
人体气化
Map<Long, Long> map =new HashMap<>();
List<Long> goalList=new ArrayList<>();
List<User> allUserList = userMapper.selectList(null);
for(User allUser : allUserList){
Long allParentId = ParentId();
Long allUserId = UserId();
map.put(allUserId,allParentId);
}
Long goalUserId = (userId);
goalList.add(userId);rct
for(int i =0; (goalUserId)!=null; i++){
goalList.add(goalUserId);
(goalUserId);
}
return goalList;
}
以上都是⼀些思路,肯定还有更简单的,记录⼀下(以上数据有部分改动,可能存在⼀些错误)

本文发布于:2024-09-22 03:40:45,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/423822.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:可能   遍历   定义   数据库   创建   部分   改动
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议