java - 如何使用 Spring/Jackson 加载目录中的所有 .yaml 文件
问题描述
我想加载一个 .yaml 文件的集合,每个文件都在列表中指定一个对象。我知道如何读取特定文件并使用jackson解析它,如下所示:
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
MicroServiceObject object = mapper.readValue(new File("src/main/resources/microservices/retrieveAccount.yaml"), MicroServiceObject.class);
但是我想读入microservices
目录中的所有文件并将它们添加到我的数据库/列表中。
如何读入/迭代特定目录中的所有文件?
解决方案
使用File#listFiles
可以为您提供目录中的文件列表(以 的形式array
):
File directory = new File("src/main/resources/microservices")
File[] files = directory.listFiles((pathname) -> pathname.getName().endsWith(".yaml"));