1. 程式人生 > >@Bean 指定初始化和銷毀方法

@Bean 指定初始化和銷毀方法

nconf 時機 定義 post spa onf ont Go 實例

bean 的生命周期

  bean 的創建 --> 初始化 --> 銷毀

ioc 容器管理 bean 的聲明周期

  可以自定義初始化和銷毀方法

構造器( 對象創建 )被調用時機

  單實例:在容器啟動的時候創建對象

  多實例:在每次獲取的時候創建對象

初始化方法被調用時機

  單實例:對象創建完成,屬性賦值好了之後,調用初始化方法

   多實例:在每次獲取的時候,調用初始化方法

銷毀方法被調用時機

  單實例:容器關閉的時候

  多實例:容器不會管理這個 bean ; 也就是說容器不會調用這個銷毀方法

一、Student 類

public class Student {

    
public Student(){ System.out.println("創建 Student 對象"); } public void init(){ System.out.println("初始化對象"); } public void destory(){ System.out.println("銷毀對象"); } }

二、配置類

@Configuration
public class ConfigOfLifeCycle { 
    //initMethod:指定初始化的方法
    
//destroyMethod:指定銷毀的方法 @Bean(initMethod="init",destroyMethod="destory") public Student student(){ return new Student(); } }

三、測試方法

@Test
public void test3(){
    //創建 ioc 容器
    AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(ConfigOfLifeCycle.class
); //關閉容器:用來測試 destory() 方法 applicationContext.close(); }

@Bean 指定初始化和銷毀方法