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

你离开我真会死。 提交于 2019-12-02 08:51:33

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!