guice框架的入门使用

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

        在这里我就不给出guice的jar包,这些都能够比較easy地下载到。 

这里与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();
    }
}

測试结果为:

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



原文地址:https://www.cnblogs.com/zfyouxi/p/5284899.html