@Bean 指定初始化和销毁方法

Posted 方方方方方方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@Bean 指定初始化和销毁方法相关的知识,希望对你有一定的参考价值。

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 指定初始化和销毁方法的主要内容,如果未能解决你的问题,请参考以下文章

Spring中Bean初始化和销毁方法的几种配置方式

022 使用@Bean的属性完成初始化和销毁的指定

Spring bean初始化与销毁的几种方式和区别

Bean的生命周期

Spring注解驱动开发如何使用@Bean注解指定初始化和销毁的方法?看这一篇就够了!!

spring中Bean的初始化和销毁方法