繁体   English   中英

JAVA + Azure Functions 中的依赖注入 (IoC)

[英]Dependency Injection (IoC) in JAVA + Azure Functions

我正在使用用 Java 编写的 Azure 函数从 REST API 检索数据并将其插入到 mongo 数据库中。 我正在尝试将应用程序分成不同的层,就像我通常为 Web 应用程序所做的那样 - 现在我只将在 mongo 中存储数据的存储库提取到一个单独的类中,所以我的函数类看起来像这样(我已经省略触发器、错误处理等)

public class SensorFunctions {

    @FunctionName("saveSensors")
    public void saveSensors(
        final ExecutionContext context) {
        SensorRepository sensorRepository = new SensorRepository();
        new SensorAPI().retrieveSensors()
            .forEach(sensorRepository::saveSensor);
    }
}

我更喜欢使用某种 IoC 机制之王,所以我不必自己实例化 repostiory 和其他类,但我可以做类似的事情

public class SensorFunctions {
    @Inject
    SensorRepository sensorRepository;

    @Inject
    SensorAPI sensorAPI;

    @FunctionName("saveSensors")
    public void saveSensors(
        final ExecutionContext context) {
        sensorAPI.retrieveSensors()
            .forEach(sensorRepository::saveSensor);
    }
}

Azure 函数可以吗? 是这样,是不是可以创建一个自动配置,还是需要在每个函数开始的时候手动触发IoC容器的配置(我会在一个项目中有多个函数)。 由于成本取决于函数的计算时间,我更喜欢尽可能轻量级的解决方案

目前,您可以使用 Spring Framework 将 Azure 函数仅用于 HTTP 请求(而不是绑定。

是有关如何使用它的示例

我知道现在正在进行一项工作以支持 Azure 函数的依赖注入,请在此处输入链接描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM