• JAVA查询类别(菜单)下的所有子类别(递归)


    /**
         * 获取父类别下面的所有子类别
         * @return List<StoreGoodsCate> 返回当前类别下的所有子类别集合
         */
        public List<StoreGoodsCate> getCateNode(List<StoreGoodsCate> storeGoodsCates){
            List<StoreGoodsCate> newCateIdNode = new ArrayList<>();
            for(StoreGoodsCate cate: storeGoodsCates){
                if(getCateChildren(cate).size() != 0){
                    //还有子类别,递归查询所有子类别
                    newCateIdNode.addAll(getCateNode(getCateChildren(cate)));
                }else{
                    //没有子类别,把当前节点添加到集合中
                    newCateIdNode.add(cate);
                }
            }
            return newCateIdNode;
        }
    
        /**
         * 查询当前类别的子类别集合
         *  这里根据自己实际项目方法即可
         * @param storeGoodsCate
         * @return
         */
        public List<StoreGoodsCate> getCateChildren(StoreGoodsCate storeGoodsCate){
            QueryWrapper<StoreGoodsCate> queryWrapper = new QueryWrapper<StoreGoodsCate>()
                    .eq("pid", storeGoodsCate.getId())
                    .eq("is_deleted", 0);
           return cateService.list(queryWrapper);
        }

    这种方法只能适用于数据量比较少的,如果数据量很大,这种查询方式会非常慢,慎用

    -----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------ (蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)
  • 相关阅读:
    感觉跟奇怪
    人多
    淡忘
    可疑
    js判断对象是否为空对象的几种方法
    互联网隐私泄漏
    清明时节
    垃圾mac
    【ES6】---JavaScript(二)
    【微信小程序】---Socket聊天功能实现
  • 原文地址:https://www.cnblogs.com/pxblog/p/14517634.html
Copyright © 2020-2023  润新知