在Spring的框架中,ApplicationContext是最为重要的一个东东。我们可以通过使用ApplicationContext,添加了一些企业级的J2EE特性,如国际化(i18n),定义转换器,设定事件的发布及通知。ApplicationContext实际上是继承BeanFactory接口而来的,所以对于ApplicationContext而言,实际上它就是一个Bean的实例。我们知道Spring中以xml配置居多的类定义。我们可以写一个类,然后完成一个配置文件的编辑工作在Spring中的机制中就是通过它与bean交互的。很多时候都是Spring提供了相关bean的导入功能,这是框架本身能够用到的。
介绍一下这几个吧:classPathxmlapplicationt
ApplicationContext中可以通过ApplicationEvent和ApplicationListener两个类支持事件处理。当然你得实现应用的监听,这得由你的一个bean来实现ApplicationListener.当事件发布到来时,你编写的bean就可以获悉到。当然你也可以使用ApplicationContext的publishEvent()方法来实现自定义的事件。在Spring中主要由3个标准事件:ContextRefreshedEvent ContextClosedEvent RequestHandledEvent。ContextRefreshedEvent表示的是当所有的bean都已经导入,单态bean已经完成实例化。ContextClosedEvent很好理解在ApplicationContext关闭时,这时候意味着所有的单态bean就将over掉。RequestHandledEvent是web特定事件用来通知一个HTTP请求服务,会用到一个Servlet相当于DispatcherServlet,但这是属于Spring框架的。好了,下一个章节说说 beanFactory。