【问题标题】:Dagger + Spring匕首+弹簧
【发布时间】:2015-09-14 17:42:12
【问题描述】:

我们选择 Dagger2 而不是 spring 作为 Storm 应用程序之一的依赖注入框架。 我们还有一个基于 Spring MVC 的遗留应用程序,它在多项目 gradle 设置中使用 dagger 项目中的一些代码。

(简化的)项目层次结构如下所示:

  1. :匕首核心
  2. :storm-dagger(取决于 dagger-core)
  3. :spring-ui(依赖dagger-core)

既然 spring 和 dagger 都有自己的引导对象图的方式,那么让 #3 一起工作的最佳方式是什么?目前,我们在 spring-ui 中有一个 @Component 工厂类,它“提供”来自 dagger-core 的依赖项。然后使用 spring 的工厂模式将工厂和提供的类都定义为 spring bean(工厂类作为使用工厂方法的工厂 bean,而其他提供的类作为工厂 bean 的工厂方法)。有没有更好的方法来做到这一点?

【问题讨论】:

  • 你好,罗宾。我也有类似的情况。我想将 dagger2 与 spring 集成。如果你有时间,可以给我发邮件到 kasyanov.maxim@outlook.com,我有几个问题。提前致谢。

标签: java spring dependency-injection dagger-2


【解决方案1】:

目前,我们在 spring-ui 中有一个 @Component 工厂类,它“提供”了来自 ​​dagger-core 的依赖项。然后使用 spring 的工厂模式将工厂和提供的类都定义为 spring bean(工厂类作为使用工厂方法的工厂 bean,而其他提供的类作为工厂 bean 的工厂方法)。

【讨论】:

    猜你喜欢
    • 2020-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多