Beans模块之工厂模块DisposableBean

博主介绍:✌全网粉丝5W+,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验✌

博主作品:《Java项目案例》主要基于SpringBoot+MyBatis/MyBatis-plus+MySQL+Vue等前后端分离项目,可以在左边的分类专栏找到更多项目。《Uniapp项目案例》有几个有uniapp教程,企业实战开发。《微服务实战》专栏是本人的实战经验总结,《Spring家族及微服务系列》专注Spring、SpringMVC、SpringBoot、SpringCloud系列、Nacos等源码解读、热门面试题、架构设计等。除此之外还有不少文章等你来细细品味,更多惊喜等着你哦

🍅uniapp微信小程序🍅面试题软考题免费使用,还可以使用微信支付,扫码加群。由于维护成本问题得不到解决,可能将停止线上维护。

点击这里预览

抖音体验版

🍅文末获取联系🍅精彩专栏推荐订阅👇🏻👇🏻 不然下次找不到哟

Java项目案例《100套》
https://blog.csdn.net/qq_57756904/category_12173599.html
uniapp小程序《100套》

https://blog.csdn.net/qq_57756904/category_12199600.html

有需求代码永远写不完,而方法才是破解之道,抖音有实战视频课程,某马某千等培训都是2万左右,甚至广东有本科院校单单一年就得3万4年就12万学费,而且还没有包括吃饭的钱。所以很划算了。另外博客左侧有源码阅读专栏,对于求职有很大帮助,当然对于工作也是有指导意义等。在大城市求职,你面试来回一趟多多少少都在12块左右,而且一般不会一次性就通过,还得面试几家。而如果你对源码以及微服务等有深度认识,这无疑给你的面试添砖加瓦更上一层楼。

最后再送一句:最好是学会了,而不是学废了!!!

DisposableBean 是 Spring Framework 中的一个接口,用于定义 bean 销毁(即容器关闭时)时执行的操作。实现这个接口的 bean 可以在容器销毁它们时执行自定义的清理逻辑,例如释放资源或关闭连接。

DisposableBean 接口定义了一个方法 destroy(),在容器销毁 bean 时会调用该方法。在这个方法中,您可以编写自己的清理代码以确保 bean 被正确地销毁。

以下是一个示例,演示如何实现 DisposableBean 接口:

java 复制代码
import org.springframework.beans.factory.DisposableBean;

public class MyDisposableBean implements DisposableBean {

    @Override
    public void destroy() throws Exception {
        // 在这里编写销毁 bean 时的清理逻辑
        System.out.println("Bean is being destroyed.");
    }

    // 其他类的方法
}

在上述示例中,我们创建了一个实现 DisposableBean 接口的类 MyDisposableBean。在 destroy() 方法中,我们可以编写销毁 bean 时的清理逻辑。当容器关闭时,它会自动调用这个方法以销毁 bean。

需要注意的是,尽管可以使用 DisposableBean 来定义销毁方法,但在实际应用程序中,更常见的做法是使用 @PreDestroy 注解或配置文件中的销毁方法。这些方法提供了更直观和可读性更好的方式来定义 bean 的销毁逻辑,而不需要实现特定的接口。例如:

java 复制代码
import javax.annotation.PreDestroy;

public class MyBean {

    @PreDestroy
    public void customDestroyMethod() {
        // 在这里编写销毁 bean 时的清理逻辑
        System.out.println("Bean is being destroyed.");
    }

    // 其他类的方法
}

在上述示例中,我们使用 @PreDestroy 注解定义了一个销毁方法,它会在 bean 销毁时自动调用。这种方式更推荐,因为它更易读,并且不需要实现额外的接口。

相关推荐
在努力的前端小白2 小时前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
一叶飘零_sweeeet5 小时前
从繁琐到优雅:Java Lambda 表达式全解析与实战指南
java·lambda·java8
艾伦~耶格尔5 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
一只叫煤球的猫5 小时前
🕰 一个案例带你彻底搞懂延迟双删
java·后端·面试
最初的↘那颗心5 小时前
Flink Stream API 源码走读 - print()
java·大数据·hadoop·flink·实时计算
JH30736 小时前
Maven的三种项目打包方式——pom,jar,war的区别
java·maven·jar
带刺的坐椅7 小时前
轻量级流程编排框架,Solon Flow v3.5.0 发布
java·solon·workflow·flow·solon-flow
David爱编程7 小时前
线程调度策略详解:时间片轮转 vs 优先级机制,面试常考!
java·后端
阿冲Runner8 小时前
创建一个生产可用的线程池
java·后端
写bug写bug8 小时前
你真的会用枚举吗
java·后端·设计模式