关于Spring定义的preDestroy修饰的方法不执行,有以下两种原因,总有一款适合你

2020-10-26 14:36:01 浏览数 (3)

  1. ApplicationContext app = new ClassPathXmlApplicationContext(“applicationcontext.xml”); //只有把这个Application变成ClassPathXmlApplicationContext,因为,还没执行完毕,容器已经关闭,因为 ApplicationContext 定义的app没有close,不能手动关闭,回提前关闭。
代码语言:javascript复制
ClassPathXmlApplicationContext app = new 
ClassPathXmlApplicationContext(“applicationcontext.xml”);
app.close();
  1. 定义为prototype类型的实例创建之后spring就不在管理了,它只是做了new操作而已,要想使用preDestroy注解,注意把scope中的参数改成singleton

0 人点赞