search

Home  >  Q&A  >  body text

spring 中的 destroy-method 和 destroy方法的区别是什么?

spring可以在在xml中配置 destroy-method 来指定销毁的方法但是也也可以通过bean实现接口DisposableBean中的destroy方法来执行销毁的动作

请问这两种有什么区别?而且是先执行destroy方法,后执行destroy-method执行的方法

为了弥补叙述的不清楚,我写了一个deamo方便理解问题描述

1

2

3

    <bean id="userService" class="cn.demo3.UserService" init-method="init" destroy-method="teardown">

        <property name="info" value="凤姐"/>

    </bean>

1

2

3

4

5

6

7

8

public class UserService implements InitializingBean,DisposableBean {

    public void destroy() throws Exception {

        System.out.println("1");

    }

    public void teardown(){

        System.out.println("2");

    }

}


高洛峰高洛峰3088 days ago589

reply all(1)I'll reply

  • 三叔

    三叔2016-11-12 11:53:37

    就是执行顺序的区别啊。
    一个是编码式,一个是配置式的。
    编码式就是在设计中就可以直接将init/destory包含至代码中,如果你很明确你的需求可以直接采用这个方式。配置式就是供外部选择了。

    reply
    0
  • Cancelreply