Spring中为bean指定InitMethod和DestroyMethod的执行方法

1.创建一个类

/**
 * @author: zhaobin
 * @date: 2021/11/25 10:16
 * @description:
 */
public class Cat {

    public Cat(){
        System.out.println("先初始化构造器");
    }

    public void start(){
        System.out.println("start方法");
    }

    public void destroy(){
        System.out.println("销毁方法");
    }
}

2.创建一个bean

/**
 * @author: zhaobin
 * @date: 2021/11/25 10:14
 * @description:
 */
@Configuration
public class EventConfig {

    @Bean(initMethod = "start",destroyMethod = "destroy")
    public Cat create(){
        Cat cat = new Cat();
        System.out.println("接下来初始化Cat中的start方法");
        //return一个宠物类,这样spring容器中就有了这个Cat类,才能执行initMethod中的start方法.以及容器关闭的时候执行销毁的方法
        return cat;
    }
}

3.加载的顺序为: create方法->Cat类的构造器->create方法中的输出打印->Cat类中的start方法->Cat类中的destroy方法

posted @ 2021-11-25 10:41  CodingChangeTheWorld  阅读(356)  评论(0编辑  收藏  举报