- DisposableBean接口方法
- PreDestroy注解方法
- AutoCloseable接口方法
- 设置setDestroyMethodName
- 方法名字推断出来的
DisposableBean接口方法
public class DestroyBean implements DisposableBean {
@Override
public void destroy() throws Exception {
System.out.println("DestroyBean DisposableBean的销毁回调");
}
}

PreDestroy注解方法
public class DestroyBean {
@PreDestroy
public void des() {
System.out.println("DestroyBean @PPreDestroy的销毁回调");
}
}

AutoCloseable接口方法
public class DestroyBean implements AutoCloseable {
public void close() {
System.out.println("DestroyBean AutoCloseable的销毁回调");
}
}

设置setDestroyMethodName
比如我用处理器来设置:

确保有这个名字的方法:
public class DestroyBean {
public void myCustomDes(){
System.out.println("DestroyBean 自定义销毁回调");
}
}

方法名字推断出来的
首先必须是bean注解的。

然后得有close或者shutdown方法,不能同时,优先close:
public class DestroyBean {
public void close() {
System.out.println("DestroyBean 根据方法名字close推断出来的销毁回调");
}
}

public class DestroyBean {
public void shutdown() {
System.out.println("DestroyBean 根据方法名字shutdown推断出来的销毁回调");
}
}

可能还有其他的方法,看源码就好啦,里面都有,我就不演示了。
好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵。