突发事件应急机制:webcontex的自动配置和事件传播机制及使用方法来源: 发布时间:星期三, 2008年9月10日 浏览:59次 评论:0
在WebProject中Spring的ApplicationContext自动根据配置文件初始化的设置过程,
在web.xml文件中配置一个listener,其listenerclass为”org.springframework.web.context.ContextLoaderListener”, 另一种实现方式是,在web.xml中配置一个servlet,配置如下: <servlet> <servlet-name>context</servlet-name> <servlet-class> org.springframework.web.context.ContextLoaderServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> 通过1或者2的配置之后,web窗口会自动加载/web-inf/applicationcontext.xml文件初始化为applicationcontext对象,如果需要指定spring配置文件的路径名和文件名,可通过4进行配置。 在web.xml文件中可以配置spring配置文件的路径和文件名,即通过配置context-param项,其param-name为contextConfigLocation,param-value为Spring配置文件的路径。 Spring中的事件传播机制及使用 Spring中的事件传播机制主要涉及两个接口和一个类,分别是ApplicationListener,ApplicationContextAware和ApplicationEvent,一个类A实现 ApplicationContextAware接口,实现其方法后可得到一个ApplicationContext的实例;自定义事件类B继承ApplicationEvent;自定义事件处理类C实现ApplicationListener,在A的要触发自定义事件的方法中,构造一个自定义事件的实例,然后通过applicationcontext的实例调用publicEvent(e)方法将此自定义事件发布,spring框架会检查所有的bean,看有哪些bean实现了ApplicationListener接口,只要实现了,就会把此事件发送给他处理。而在自定义事件处理中,可以根据事件类型来决定是不是要做相应的处理。 实际上,Spring中的事件传播机制中没有太多新鲜的东东,只是不用明确定义事件源与事件处理器的监听关系,而是由SPRING框架来处理这种监听关系,只要是你有继承自applicationEvent的事件发生,我就把此事件发送到所有的实现了applicationListener接口的bean,是否处理就由他们自己决定了。OVER 编程网 www. 0
相关文章
读者评论
发表评论 |