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
来源:oschina
链接:https://my.oschina.net/u/1582029/blog/530820