【问题标题】:Spring bean initialized on web app starts up在 Web 应用程序上初始化的 Spring bean 启动
【发布时间】:2011-01-23 20:37:51
【问题描述】:

这可能是由于我对 Spring 框架的无知,但我正在构建一个 JSF+Facelets+Spring Web 应用程序,我有一个 bean,我想在应用程序启动时调用它的 init 方法。我的问题是初始化 bean。我可以在页面上引用 bean,当我转到页面时,bean 被初始化,并按指示工作;我想要的是在应用程序启动时初始化 bean

在 web 应用启动时初始化 Spring bean 的方法是什么

【问题讨论】:

    标签: spring jsf initialization


    【解决方案1】:

    您的问题更多是针对 Spring 而不是针对 JSF。我知道 JSF 的解决方案,但我认为这不适合 Spring bean。我在谷歌上搜索了一下,在 Spring 论坛上找到了这个主题,它可能对你有用。它描述/链接了几种不同的方法:http://forum.springsource.org/archive/index.php/t-21982.html

    【讨论】:

      【解决方案2】:

      你想要在 webapp 初始化后立即处理的所有代码都可以在一个实现 ServletContextListener 的类中完成

      @WebListener
      public class ApplicationListener implements ServletContextListener {...}
      

      你可以像这样创建 spring 应用程序上下文

      ApplicationContext context = new ClassPathXmlApplicationContext(
              new String[] {"applicationContext.xml", "applicationContext-part2.xml"});
      // of course, an ApplicationContext is just a BeanFactory
      BeanFactory factory = context;
      

      得到你感兴趣的豆子然后继续。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-31
        • 1970-01-01
        • 1970-01-01
        • 2018-12-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-09-06
        相关资源
        最近更新 更多