我正在尝试为Spring Boot应用程序实现正常的关闭序列。为此,我使用Runtime注册了一个自定义关闭钩子,并禁用了Spring提供的一个(SpringApplication.setRegisterShutdownHook(false))。从这个自定义关闭钩子我首先想要暂停嵌入式Tomcat或连接器和一些其他调度程序,之后我手动调用applicationContext.close()来关闭Spring应用程序的其余部分。
访问嵌入式Tomcat实例的最佳方法是什么?我正在摆弄TomcatEmbeddedServletContainerFactory,但这似乎没有让我访问默认连接器或具有stop方法的EmbeddedServletContainer。
答案 0 :(得分:1)
您可以从EmbeddedServletContainer
访问EmbeddedWebApplicationContext
(只需注入)并向下投射。