当前位置:首页 > 全部子站 > IT > 思科认证

Spring中事件处理的小技巧

来源:长理培训发布时间:2017-12-22 09:19:45

 百度广告

  Spring中提供一些Aware相关的接口,BeanFactoryAware、 ApplicationContextAware、ResourceLoaderAware、ServletContextAware等等,其中最常用到的是ApplicationContextAware。实现ApplicationContextAware的Bean,在Bean被初始后,将会被注入 ApplicationContext的实例。ApplicationContextAware提供了publishEvent()方法,实现Observer(观察者)设计模式的事件传播机,提供了针对Bean的事件传播功能。通过Application.publishEvent方法,我们可以将事件通知系统内所有的ApplicationListener。

  Spring事件处理一般过程:

  ·定义Event类,继承org.springFramework.context.ApplicationEvent.

  ·编写发布事件类Publisher,实现org.springframework.context.ApplicationContextAware接口.

  ·覆盖方法setApplicationContext(ApplicationContext applicationContext)和发布方法publish(Object obj)

  ·定义时间监听类EventListener,实现ApplicationListener接口,实现方法onApplicationEvent(ApplicationEvent event).

  java 代码

 

import org.springframework.context.ApplicationEvent;

/** 
* @author new 
*/ 

 private String message;

 public void setMessage(String message){ 
}

 public String getMessage(){ 
}

 public MessageEvent(Object source, String message) { 
this.message = message; 
}

 private static final long serialVersionUID = 1L; 

||| 
 

import org.springframework.beans.BeansException; 
import org.springframework.context.ApplicationContextAware; 
public class Publisher implements ApplicationContextAware {

 private ApplicationContext context;

 @Override 
throws BeansException { 
this.context = arg0; 

 public void publish(String message){ 
}

 public static void main(String args) { 
Publisher pub = (Publisher) ctx.getBean("publisher"); 
pub.publish("The quick brown fox jumped over the lazy dog"); 
}


 

import org.springframework.context.ApplicationEvent; 
public class MessageEventListener implements ApplicationListener {

 @Override 
// TODO Auto-generated method stub 
MessageEvent msEvent = (MessageEvent)event; 

}


责编:罗莉

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部