您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将一些JSON文件加载到Spring Boot应用程序中的最佳方法

将一些JSON文件加载到Spring Boot应用程序中的最佳方法

不知道以下的天真的实现是否满足“最佳”的标准,但是您可以创建一个新的服务来处理这种责任,例如:

@Service
public class OperatoRSService {

    @Value("${json.config.folder}")
    String jsonConfigFolder;

    List<ContextOperatorBean> operators = new ArrayList<>();

    @postconstruct
    public void init() throws IOException {
        ObjectMapper jsonMapper = new ObjectMapper();
        for (File jsonFile : getFilesInFolder(jsonConfigFolder)) {
            // deserialize contents of each file into an object of type
            ContextOperatorBean operator = jsonMapper.readValue(jsonFile, new TypeReference<List<ContextOperatorBean>>() {});
            operators.add(operator);
        }
    }

    public List<ContextOperatorBean> getMatchingOperators(String context) {
        return operators.stream().filter(operator -> checkIfMatches(operator, context)).collect(Collectors.toList());
    }

    private boolean checkIfMatches(ContextOperatorBean operator, String context) {
        // TODO implement
        return false;
    }

    private File[] getFilesInFolder(String path) {
        // TODO implement
        return null;
    }
}

注意:忽略了处理失败或意外情况以及一些实施细节。

然后@Autowire在控制器中调用它并getMatchingOperators()仅过滤匹配的条目。

Java 2022/1/1 18:14:35 有693人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶