首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Spring的三种依赖注入的模式

2012-10-09 
Spring的三种依赖注入的方式依赖注入有三种方式:1接口注入:接口注入的意思是通过接口来实现信息的注入,而

Spring的三种依赖注入的方式
依赖注入有三种方式:
1接口注入:
接口注入的意思是通过接口来实现信息的注入,而其它的类要实现该接口时,就可以实现了注入:
下面是代码
Java 代码

   1. public interface Manager{ 
   2.  public void manage(Business business); 
   3. } 
   4.  
   5. public class xx { 
   6. private Business business; 
   7. public void manage(Business business){ 
   8. this.business = business; 
   9. } 
  10. } 

public interface Manager{
public void manage(Business business);
}

public class xx {
private Business business;
public void manage(Business business){
this.business = business;
}
}



2 Set注入:
通过set方法来注入
Java 代码

   1. public class xx { 
   2. private Manager manage; 
   3. public void setManager(Manager manage){ 
   4. this.manage= manage; 
   5. } 
   6. } 

public class xx {
private Manager manage;
public void setManager(Manager manage){
this.manage= manage;
}
}



3 构造注入:
通过构造函数来注入
Java 代码

   1. public class xx { 
   2. private Manager manage; 
   3. public xx(Manager manage){ 
   4. this.manage= manage; 
   5. } 
   6. } 

public class xx {
private Manager manage;
public xx(Manager manage){
this.manage= manage;
}
}


当然通过不同的注入方式,config.xml的配置是不同的。
通过构造函数进行的注入方式xml配置为
Java 代码

   1. <?xml version="1.0" encoding="UTF-8"?>   
   2. <!DOCTYPE beans Public "-//SPRING//DTD BEAN//EN"   
   3.  "http://www.springframework.org/dtd/spring-beans.dtd">   
   4. <beans>  <bean id="HelloWorld" encoding="UTF-8"?> 
<!DOCTYPE beans Public "-//SPRING//DTD BEAN//EN" 
"http://www.springframework.org/dtd/spring-beans.dtd"> 
<beans>  <bean id="HelloWorld" class="com.jnotnull.HelloWorld">
<constructor-arg index="0">
<value>HelloWorld</value>
</constructor-arg>
</bean>
</beans>


这里的contructor-arg,用来表示通过构造函数来注入,而index表示构造函数传递进来的第几个参数,在多参数的构造函数中,可以通过它来设立注入的变量。在这里的index="0"表示构造函数的第一个参数。同时我们还可以更改一下构造函数的个数和这里Index的个数,我们回发现很多的问题哦;

总结: 在既有构造器,又有Set 方法的前提下,Spring 优先考虑使用构造器注入.

热点排行