我有使用Google guice DI框架开发的服务,我想将它们注入spring boot应用程序中。任何人都无法阐明我们如何在Spring Boot应用程序中访问基于谷歌guice的服务吗?有任何指向示例代码的指针吗?
答案 0 :(得分:0)
欢迎使用StackOverflow!
根据您在Guice服务中实际执行的操作,您可以执行两种不同的操作。
如果仅使用JSR330
批注,那么从理论上讲,您可以简单地用Spring @Configuration
类替换Guice模块,并仅使用Spring进行D.I。这将起作用,因为Spring和Guice都支持JSR330
注释。我认为,这仅在相当简单的情况下有效。
使用Spring的org.springframework.guice:spring-guice
库。它允许您使用Guice模块和提供的bean。
首先,您需要将其包含在pom中:
<dependency>
<groupId>org.springframework.guice</groupId>
<artifactId>spring-guice</artifactId>
<version>1.1.3.RELEASE</version>
</dependency>
然后,您必须配置Spring以使用所需的Guice模块:
@Configuration
@EnableGuiceModules
public static class GuiceConfig {
@Bean
public MyModule myModule() {
return new MyModule();
}
}
您可以在GitHub上了解更多有关该项目的信息:https://github.com/spring-projects/spring-guice#using-existing-guice-modules-in-a-spring-applicationcontext。