about Spring 3.0(spring 注入)

spring 注入是指在启动spring容器加载bean配置的时候,完成对变量的赋值行为

 

常用的两种注入方式:设值注入;构造注入

<property name ="" ref='"/>  对应set方法对应注入;设值注入

<constructor-arg name = '' ref=‘’/>创建实例时即可进行对应注入;构造注入

 

public interface InjectDaoImpl implements InjectDaAO{

   public void save(String arg){

    System.out.print("数据保存"+arg);

}

}

 

public interface InjectService{

   public void save(String arg);

}

 

pulblic class InjectServiceImol implements InjectService{

      public InjectDAO injectDao;

   //生成set方法进行设值注入

    public void SetInjectDAO(InjectDAO injectDao){

     this.injectDao = injectDao;

}

     public void save(String arg){

    Syetem.out.print("service接收参数 : "+ arg);

    arg = arg+“:”+this.hashCode();

}

}

 

@Runwith(BlockUnit4ClassRunner.calss)

public class TestInject extends UnitTestBase{

 public TestInject(){

    super("classpath:spring-injection.xml");

}

@Test

public  void testSetter(){

    InjectService service = super.getBean("InjectService");

}

}

 

<bean id='injectService' class = '......serviceImpl'>

  <property name = "injectDao" ref="injectDao"></property>

</bean>

<bean id = "injectDao" class='com....InjectDaoImpl'><bean>

 

bean 初始化,销毁

1. 实现org.springframework.beans.factory.initializingBean接口,覆盖afterPropertiesSet方法

2. 配置Init-method

<bean id = 'exampleInitBean'  class=‘example.ExampleBean’ init-method=‘init’ />

public class ExampleBean {

   public void init(){

//初始化工作

}

}

销毁

1. 实现org.springframework.beans.factory.DisposableBean接口,覆盖destroy方法

2. 配置destroy-method方法

<bean id ='exampleDestroyBean' class = ‘example.ExampleBean’ destroy-method='cleanup' />

public class ExampleBean{

public void cleanup{

//销毁动作

}

}

 

posted @ 2018-03-26 10:36  我不是大豆  阅读(155)  评论(0)    收藏  举报