guice框架的入门使用

guice框架是一种类似于spring的ioc容器的一种框架,使用简单,比较轻量级的一个框架,速度极快,灵活性极强,现在就先来写几个guice的程序。

        在这里我就不给出guice的jar包,这些都可以比较容易地下载到。 

这里与spring相同,必须先要有接口及其实现类才能实现注入。程序为:

接口HelloGuice:

package cn.com.guice;

/**
 * Created by xiaxuan on 15/7/10.
 */
public interface HelloGuice {
    public void sayHello();
}
实现类:

package cn.com.guice.impl;

import cn.com.guice.HelloGuice;

/**
 * Created by xiaxuan on 15/7/10.
 */
public class HelloGuiceImpl implements HelloGuice{
    @Override
    public void sayHello() {
        System.out.println("Hello Guice!");
    }
}

在这里先使用非注解的形式来进行。

这里要使用一个module来进行注入和绑定,程序如下:

package cn.com.guice;

import cn.com.guice.impl.HelloGuiceImpl;
import com.google.inject.Binder;
import com.google.inject.Module;

/**
 * Created by xiaxuan on 15/7/10.
 */
public class HelloGuiceModule implements Module{

    @Override
    public void configure(Binder binder) {
        binder.bind(HelloGuice.class).to(HelloGuiceImpl.class);
    }
}

如此基本就完成了注入,现在来测试这个程序。

测试如下:

package cn.com.guice;

import cn.com.guice.HelloGuice;
import cn.com.guice.HelloGuiceModule;
import com.google.inject.Guice;
import com.google.inject.Injector;

/**
 * Created by xiaxuan on 15/7/10.
 */
public class TestGuice {
    public static void  main(String[] args){
        Injector injector= Guice.createInjector(new HelloGuiceModule());
        HelloGuice helloGuice=injector.getInstance(HelloGuice.class);
        helloGuice.sayHello();
    }
}

测试结果为:

guice框架的入门使用_第1张图片

如此便完成了di的依赖注入思想。



你可能感兴趣的:(java,IOC)