gpt4 book ai didi

Spring Web 应用程序 : Post-DispatcherServlet initialization

转载 作者:行者123 更新时间:2023-12-01 15:53:15 31 4
gpt4 key购买 nike

我正在使用 Spring 3.2 DispatcherServlet。我正在寻找在 DispatcherServlet 初始化完成后 发生的初始化 Hook ;标准的 Spring 解决方案或 servlet 解决方案。有什么建议吗?

作为引用,下面是 servlet 启动后的最终日志记录语句。我希望我的初始化方法在 配置成功 之后立即执行 log statement .

DEBUG o.s.w.s.DispatcherServlet - Published WebApplicationContext of servlet 'mySpringDispatcherServlet' as ServletContext attribute with name [org.springframework.web.servlet.FrameworkServlet.CONTEXT.mySpringDispatcherServlet] 
INFO o.s.w.s.DispatcherServlet - FrameworkServlet 'mySpringDispatcherServlet': initialization completed in 5000 ms
DEBUG o.s.w.s.DispatcherServlet - Servlet 'mySpringDispatcherServlet' configured successfully

根据我的研究,到目前为止,以下方法没有达到预期的效果:

  1. 根据 this answer 扩展 ContextLoaderListener/实现 ServletContextListener .
  2. 根据 the javaoc 实现 WebApplicationInitializer .
  3. 我的 beans 使用 @PostConstruct 成功;我正在寻找一个 Servlet 或容器级别的 Hook ,它们将在容器初始化和后处理 bean 之后执行。

最佳答案

根本问题是我无法覆盖 final 方法 HttpsServlet.init() .我在 DispatcherServlet.initWebApplicationContext 中找到了附近的 @Override 可用方法,它确保我的 bean 和上下文已完全初始化:

@Overrideprotected WebApplicationContext initWebApplicationContext(){    WebApplicationContext wac = super.initWebApplicationContext();    // do stuff with initialized Foo beans via:    // wac.getBean(Foo.class);    return result;}

关于 Spring Web 应用程序 : Post-DispatcherServlet initialization,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17195258/

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