google guice

1 google guice是什么

google guice是一个轻量的DI容器。

2 guice和spring对比

spring的配置放在xm文件中,guice的配置放在Module中。

guice可以实现动态注入,spring不行。

3 injector

这个是依赖注入上下文,可以把它理解为依赖注入的管理者。

injector一般在应用的main函数中和Guice的Modules建立起对应关系。

4 @inject注入

4.1 属性注入

直接注解属性。

4.2 setter注入

注解setter函数。

4.3 构造函数注入

注解构造函数。

5 @Provides

@Provides注解的方法也是放在Module中的。这样的方法提供对象,它的返回值就是它提供的对象。如果加了@Named,那么就按照名字进行绑定。

6 guice的绑定

链接绑定

注解绑定

无目标绑定

@Provides

7 guice注入失败的原因

普通的对象的注入不会无缘无故失败,失败肯定是因为数据库链接、消息队列、网络连接失败导致的。

8 guice的注入方式

在GuiceModule中绑定接口和实现,然后在main中将这种绑定关系交给Injector,保存在一个Map中,这个是显示绑定关系。然后又两种方式注入,一种是通过注释,另外一种是通过通过Injector的getInstance()方法来指定接口获取。

原文地址:https://www.cnblogs.com/hustdc/p/9138548.html