java的销毁方法_销毁Spring Bean的三种方法
@PreDestroy Java标准注解
实现DisposableBean的Destroy()方法
自定义销毁方法
XML 配置:
Java注解 @Bean(destroy="destroy")
Java API AbstractBeanDefinition#setDestroyMethodName(String)
DemoApplication.java
package com.rumenz;
public class DemoApplication {
public static void main(String[] args) {
AnnotationConfigApplicationContext ac=new AnnotationConfigApplicationContext();
ac.register(DemoApplication.class);
ac.refresh();
System.out.println("Spring 上下文启动完成。。。。。");
final DefaultRumenzFactory bean = ac.getBean(DefaultRumenzFactory.class);
System.out.println("Spring 上下文准备关闭。。。。。");
ac.close();
System.out.println("Spring 上下文已关闭。。。。。");
}
@Bean(initMethod = "initMethod",destroyMethod = "destroy1")
public static DefaultRumenzFactory defaultRumenzFactory(){
return new DefaultRumenzFactory();
}
@PreDestroy
public void destroy(){
System.out.println("PreDestroy执行。。。。");
}
}
DefaultRumenzFactory.java
package com.rumenz;
public class DefaultRumenzFactory implements InitializingBean, DisposableBean {
public DefaultRumenzFactory() {
System.out.println("无参构造方法执行....");
}
@PostConstruct
public void init(){
System.out.println("PostConstruct init.......");
}
public void initMethod(){
System.out.println("init method.......");
}
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("afterPropertiesSet.....");
}
@Override
public void destroy() throws Exception {
System.out.println("DisposableBean#destroy 执行中。。。");
}
public void destroy1(){
System.out.println("@Bean(destroyMethod = \"destroy1\") 自定义销毁方法执行...");
}
}
输出
Spring 上下文准备关闭。。。。。
DisposableBean#destroy 执行中。。。
@Bean(destroyMethod = "destroy1") 自定义销毁方法执行...
PreDestroy执行。。。。
Spring 上下文已关闭。。。。。
AnnotationConfigApplicationContext.close() 触发了销毁操作
java的销毁方法_销毁Spring Bean的三种方法相关推荐
- java中隐函数求导法则_隐函数求导的三种方法
this.p={ m:2, b:2, loftPermalink:'', id:'fks_085075084086088070081083074065081087082066093087080', b ...
- java bean销毁,销毁Spring Bean的三种方法
@PreDestroy Java标准注解 实现DisposableBean的Destroy()方法 自定义销毁方法 XML 配置: Java注解 @Bean(destroy="destroy ...
- 销毁Spring Bean的三种方法
@PreDestroy Java标准注解 实现DisposableBean的Destroy()方法 自定义销毁方法 XML 配置:<bean destroy="destroy" ...
- Java实现中国式排名_统计中国式排名的三种方法,一定有一个适合你
引言:什么是中国式排名 看到题目,可能有些朋友会产生一个疑问,什么是中国式排名?通过一个例子来看看: C列是使用了RANK函数得到的名次,RANK函数的用法很简单:=RANK(要排名的数据,参加排名的 ...
- Spring Bean的三种配置方式
目录 一.传统的XML配置方式 二.基于java注解的配置 三.基于类的Java Config 正文 Spring Bean有三种配置方式: 传统的XML配置方式 基于注解的配置 基于类的Java C ...
- python下载方法-python实现下载文件的三种方法_python
本篇文章主要介绍了python实现下载文件的三种方法,最常用的方法就是通过Http利用urllib或者urllib2模块还有requests,有兴趣的可以了解一下. Python开发中时长遇到要下载文 ...
- java json的使用方法_JAVA编写JSON常用的三种方法
JAVA编写JSON常用的三种方法 Szx • 2019 年 11 月 15 日 1.jsonlib需要引入的包也多,代码也相对多一些. 2.Gson:谷歌的 3.FastJson:阿里巴巴的,这几个 ...
- java中三种方法_Java文件I/O的三种方法
Java文件I/O的三种方法 RandomAccessFile是不属于InputStream和OutputStream类系的.实际上,除了实现DataInput和DataOutput接口之外(Data ...
- java 终止方法_Java中终止线程的三种方法
Java中终止线程的三种方法 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit 这些终止线程运行的方法已经 ...
最新文章
- IntelliJ IDEA绑定Github报Error 403: Not Authorized没有授权问题解决方法
- 发起http请求_关于HTTP请求发起和响应你了解多少
- Python实用小技能,一个比一个高级!
- python数据分析入门
- 数据质量 开源框架_Netflix开源Polynote框架,可简化数据科学和机器学习工作流程...
- Mysql之sql注入
- 机器人方队解说词_创想机器人博物馆介绍配音解说词
- 基于51单片机智能电子密码锁的设计
- (一)幻彩灯珠-SK6812
- 数字图像处理-常考算法代码-详细注释
- 如何从ZIP文件解压缩文件
- 2020 DASCTFBJD 部分题解
- 【计算机视觉】回顾2022年计算机视觉领域最激动人心的进展
- next主题侧边目录点击失效无法正常跳转
- 新型微框架磁悬浮飞轮用洛伦兹力磁轴承
- html文档可以使用记事本编辑,用记事本编写的HTML文件,使用浏览器打开乱码
- M1 Mac使用PD虚拟机配合VSC代替Keil烧录MM32单片机
- 深度学习未来的研究方向,主要有哪些?
- linux上如何删除文件名乱码的文件
- 一个工作一年半的程序员的自述(四)
热门文章
- 逻辑回归算法c语言_逻辑回归算法背后的数学
- mysql 多配置文件实例安装_mysql安装之多实例多配置文件安装
- mysql仅php_php – MySQL仅更新表中的某些字段
- php项目自动布署mysql_如何自动化一键部署PHP项目
- mysql客户端与服务端_mysql语句在客户端与服务端的基本使用
- @Async的异步任务多起来了,如何配置多个线程池来隔离任务?
- 皮一皮:这才是「真 · 老司机」...
- 每日一皮:当你要下班的时候,突然测试叫住了你...
- 每日一皮:阅读软件许可协议让你想到了什么?
- 代码优化的 5 大原则,第 1 条相信你一开始就没想到!