public class Test {
public static void main(String[] args) {
MyModule module = new MyModule();// 定义注射规则
Injector injector = Guice.createInjector(module);// 根据注射规则,生成注射者
Client client = new Client();
injector.injectMembers(client);// 注射者将需要注射的bean,按照规则,把client这个客户端进行注射
System.out.println(injector.getInstance(MyService.class));
System.out.println(injector.getInstance(MyService.class));
System.out.println(injector.getInstance(MyService.class));
System.out.println(injector.getInstance(MyService.class));
System.out.println(injector.getInstance(MyService01.class));
client.myMethod();
}
}
import com.google.inject.Inject;
public class Client {
MyService service;
@Inject
// 告诉容器,这里的service对象的引用,需要进行注入
void setService(MyService service) { // 这里的方法名字可以任意定义
this.service = service;
}
public void myMethod() {
service.myMethod();
}
}
本文介绍了一个使用Google Guice框架实现依赖注入的例子。通过创建一个模块定义依赖关系,并使用Guice生成的Injector来注入这些依赖到客户端。该示例展示了如何通过@Inject注解指定依赖项和服务对象。
177

被折叠的 条评论
为什么被折叠?



