gpt4 book ai didi

java - 在 Web 应用程序中注册 shutdownHook

转载 作者:IT老高 更新时间:2023-10-28 13:48:07 27 4
gpt4 key购买 nike

我们如何在 Web 应用程序中注册Shutdown hook?

在 web.xml 或 applicationContext.xml 中注册它有什么好处吗?

我知道如果我们使用带有主类的应用程序很简单。

ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("ApplicationContext.xml");
context.registerShutdownHook();

但是 Web 应用程序呢?因为它使用 ContextListener

最佳答案

在独立(非网络)应用程序中注册ShutdownHook():

@PreDestroy 注释用于 bean 方法,以便在 bean 从上下文中删除或上下文关闭时得到通知。

在调用 context.close()context.registerShutdownHook() 时触发关闭事件。

@Component(value="someBean")
public class SomeBean {

@PreDestroy
public void destroy() {
System.out.println("Im inside destroy...");
}
}

我希望你已经知道了。


在 Web 应用程序中注册ShutdownHook():

在 Web 应用程序中,DispatcherServlet/ContextListener 创建 ApplicationContext 并在服务器关闭时关闭上下文。您不需要显式调用 context.close()context.registerShutdownHook()

当服务器关闭时,您的 bean 上的 @PreDestory 方法将自动收到通知。

关于java - 在 Web 应用程序中注册 shutdownHook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23936162/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com