怀疑Spring Bean生命周期中的init和destroy bean方法

时间:2013-01-24 18:44:32

标签: java spring spring-mvc

我正在学习Spring Framework,现在我正在研究init和destroy beans callbacl方法。

我正在关注本教程:http://www.tutorialspoint.com/spring/spring_bean_life_cycle.htm

我对本教程有些怀疑:

1)为什么在MainApp类中他将上下文声明为AbstractApplicationContext但是使用实现ClassPathXmlApplicationContext创建它?是因为我可以覆盖init()和destroy()方法吗?或者还有什么?

2)context.registerShutdownHook()究竟是什么做的;方法

1 个答案:

答案 0 :(得分:2)

  • AbstractApplicationContext是声明registerShutdownHook()的地方。因此,您需要在变量声明中使用此类(或其任何子类),以便在应用程序上下文中调用registerShutdownHook()

  • registerShutdownHook()注册一个JVM关闭挂钩,它会在JVM关闭时关闭应用程序上下文(销毁所有bean)