递归队列循环实现爬取公共服务数据字典

1.需求:需要把所有应用模块整理,哪些服务用了哪些数据字典
思路
A。一个个copy可能三天都不见得完成
B.请公共平台查询数据字典对应的数据库,不过可能有难度
C。代码循环请求根据根节点遍历找出所有叶子节点。(类似递归遍历某个文件夹,找出所有文件)

//利用Queue队列实现文件夹中的文件递归遍历
    public static List<File> getFileList(File file) throws IOException {
     
        List<File> list = new ArrayList<File>();//存放所有的文件对象集合

        Queue<File> queue = new LinkedList<File>();//queue队列:FIFO
        queue.add(file);//C:\\Users\\86159\\Desktop\\download

        while (queue.size() > 0 && queue != null) {
     
            File file1 = queue.poll();//弹出  //\\download
            if (file1.isDirectory()) {
     
                //是文件夹,遍历文件孩子子对象数组并放入队列
                File[] files2 = file1.listFiles();//\download\\user
                for (File file2 : files2) {
     
                    queue.add(file2);//添加到队列尾部
                }
            } else if (file1.isFile()) {
     
                //是文件就加入List文件对象集合
                list.add(file1);
                //System.out.println(file1.getAbsolutePath());
            }
        }
        return list;
    }

你可能感兴趣的:(java,java,后端)