spring框架中的依赖注入技术

计应134(实验班) 周露玲

通过Computer类和USB类之间产生的紧密耦合关系来实现依赖注入。

创建一个USB类

public interface USB //USB接口
{
public void insert();//插入
public String read();//读取
public void write(String s);//写入
public void pop();//弹出
}

创建一个对象(Bean),代码如下:

public class UDisk implements USB
{
public void insert(){
System.out.println("插入U盘");};
public String read(){
System.out.println("读取数据");
return "some data";
};
public void write(String s){
System.out.println("写入数据:"+s);
};
public void pop(){
System.out.println("弹出U盘");
};

}

创建一个对象(Bean),代码如下:

public interface SmartDevice {
public void saveData(String data);
}

创建Computer类,代码如下:

public class Computer implements SmartDevice
{
private USB usbDevice;
public Computer(){}//这设备里不能构造USB
public void saveData(String data)//实现智能设备的方法
{
usbDevice.insert();
usbDevice.write(data);
usbDevice.pop();
}
public void setUsbDevice(USB u)
{
usbDevice=u;
}

}

在修改配置文件applicationContext.xml,实例化Bean,代码如下:

<bean id="theUDisk" class="com.cqvie.UDisk" abstract="false"
lazy-init="default" autowire="default" >
</bean>
<bean id="theComputer" class="com.cqvie.Computer" abstract="false"
lazy-init="default" autowire="default"
p:usbDevice-ref="theUDisk">
</bean>

最后测试类,获得注入的Bean,代码如下:

public class test {

public static void main(String[] args)
{
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
Computer c= (Computer)context.getBean("theComputer");
c.saveData("成功");

}

}

 

posted @ 2015-06-08 17:11  zhoululing  阅读(219)  评论(0编辑  收藏  举报