Google Guice依赖注入框架之Hello world

最早接触依赖注入是使用Spring的时候,但是这个框架有点太"重"了,所以如果只是想在代码里面使用依赖注入,可以选择Google的Guice,相比于Spring更加的轻量级和简单。

Demo

基于guice的4.1.0版本,实现Hello world的功能

  • 先创建一个接口
public interface IHello {
    void sayHello();
}
  • 定义实现类
public class Hello implements IHello {
    private String name;

    @Inject
    public Hello(@Named("name") String name) {
        this.name = name;
    }

    @Override
    public void sayHello() {
        System.out.println("Hello " + name);
    }
}
  • 定义Module
public class AppModule extends AbstractModule {
    @Override
    protected void configure() {
        bindConstant().annotatedWith(named("name")).to( "world" );
        bind(IHello.class).to(Hello.class);
    }
}
  • 测试类
public class App {

    public static void main(String[] args) {
        Injector injector = Guice.createInjector(new AppModule());
        IHello hello = injector.getInstance(IHello.class);

        hello.sayHello();
    }
}
  • 输出结果

    Hello world
    

你可能感兴趣的:(Google Guice依赖注入框架之Hello world)