java - Dagger + Spring

标签 java spring dependency-injection dagger-2

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

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

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

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

最佳答案

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

关于java - Dagger + Spring ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32570708/

相关文章:

java - 使用 commons-net 连接到 FTPS 服务器时为 "534 Policy requires SSL"

java - Maven Android 项目不适用于 Java 8

java - 在结果集中找不到列

java - 为 Spring @Scheduled 提供时区?

java - tomcat 错误 404 - 源服务器未找到目标资源的当前表示或不愿意透露该资源的存在

AngularDart 依赖注入(inject)

java - 在调整应用程序窗口大小之前,jPanel 不会刷新

java - Java 模糊测试库

c# - 在 ASP .NET Core Web API Controller 中注入(inject) Serilog 的 ILogger 接口(interface)

.net - WCF 服务中的依赖注入(inject)