Java Web(6)论如何在 Listener获取Spring Bean

1. 在Web系统开始运行前,需要在数据库里填充一些预置的数据。这里就需要一个在系统运行时,只运行一次的方法,来实现系统的初始化过程。

    在这里,自然而然的想到了ServletContextListener这么一个监听器,在serlvet-api文档是这么描述的

    Interface for receiving notification events about ServletContext lifecycle changes.

    而刚好,一个web系统,就只有一个servletContext。

2. 然后问题来了,spring的初始化,加载xml配置也是使用这个么一个监听器——org.springframework.web.context.ContextLoaderListener。

    那要怎么样才能在自己定义的Listener中通过spring ApplicationContext来获取Bean呢?

3. 答案就是WebApplicationContextUtils。这是spring-web里的一个组件,可以使用它来获取ApplicationContext,在得到了ApplicationContext,自然而然就得了Bean

你可能感兴趣的:(Java Web(6)论如何在 Listener获取Spring Bean)