系列十六、bean有哪些生命周期的回调方法?有哪几种实现方式?

一、概述

bean的生命周期的回调方法主要分两种,一种是初始化时进行调用,另外一种是销毁时进行调用。但是不管是初始化还是销毁,都对应着三种方式。

二、实现方式

2.1、注解方式

java 复制代码
@PostConstruct + @PreDestroy
java 复制代码
@Component
public class UserService {

    public UserService() {
        System.out.println("UserService的构造方法执行了...");
    }

    @PostConstruct
    public void init() {
        System.out.println("UserService 初始化...");
    }

    @PreDestroy
    public void destroy () {
        System.out.println("UserService 销毁...");
    }

}

2.2、实现接口方式

java 复制代码
@Component
public class UserService2 implements InitializingBean, DisposableBean {

    public UserService2() {
        System.out.println("UserService2的构造方法执行了...");
    }

    @Override
    public void afterPropertiesSet() throws Exception {
        System.out.println("UserService2 初始化...");
    }

    @Override
    public void destroy() throws Exception {
        System.out.println("UserService2 销毁...");
    }
}

2.3、通过指定initMethod和destoryMethod方式

java 复制代码
public class UserService3 {

    public UserService3() {
        System.out.println("UserService3的构造方法执行了...");
    }

    public void init() {
        System.out.println("UserService3 初始化...");
    }

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

}
java 复制代码
@Configuration
@ComponentScan(basePackages = "org.star")
public class MySpringConfig {

    @Bean(initMethod = "init",destroyMethod = "destroy")
    public UserService3 userService3() {
        return new UserService3();
    }

}
相关推荐
程序员南飞41 分钟前
ps aux | grep smart_webrtc这条指令代表什么意思
java·linux·ubuntu·webrtc
弥琉撒到我44 分钟前
微服务swagger解析部署使用全流程
java·微服务·架构·swagger
一颗花生米。2 小时前
深入理解JavaScript 的原型继承
java·开发语言·javascript·原型模式
问道飞鱼2 小时前
Java基础-单例模式的实现
java·开发语言·单例模式
学习使我快乐012 小时前
JS进阶 3——深入面向对象、原型
开发语言·前端·javascript
bobostudio19952 小时前
TypeScript 设计模式之【策略模式】
前端·javascript·设计模式·typescript·策略模式
通信仿真实验室3 小时前
(10)MATLAB莱斯(Rician)衰落信道仿真1
开发语言·matlab
勿语&3 小时前
Element-UI Plus 暗黑主题切换及自定义主题色
开发语言·javascript·ui
黄尚圈圈3 小时前
Vue 中引入 ECharts 的详细步骤与示例
前端·vue.js·echarts
浮华似水4 小时前
简洁之道 - React Hook Form
前端