如何自定义事件(Spring事件机制浅谈)

本文介绍Spring框架中的事件机制,包括如何定义和使用自定义事件、监听器等,并通过实例演示了如何利用事件机制来降低代码间的耦合度。

       LZ第一次在工作中接触Spring事件机制是项目中的定时任务,当Spring容器初始化完成时,把配置在数据库中的定时任务数据全部加载.此时只用定义一个类实现ApplicationListener<ContextRefreshedEvent>接口,并把该类交给Spring来管理,并在覆写的方法中实现自己的业务即可,因为ContextRefreshedEvent就是Spring的启动事件,Spring启动完成就会触发该事件.

       我们工作中也有许多时候需要自己定义事件与监听器,例如,在金融相关的项目中,当一笔借款或还款被审核成功后可能会推送消息,发站内信,发短信,记录流水等等,如果我们都通过注入对象调用对象对应的方法来处理,那么代码耦合度高.此时我们可以使用Spring的事件机制来处理.

   接口简介:

       ApplicationEvent : 事件,代表一个事情发生了,一个事件对象需要关联(事件源,事件关联的对象);

       ApplicationEventPublisher : 发布消息对象,负责发布消息,调度消息的监听器;

       ApplicationListener : 负责处理某一类消息;

   流程简介:

       首先创建一个监听器,并注册到Spring容器;

       其次,在某一个事件发生的时候,创建这个事件对应的消息对象(ApplicationEvent);

       最后,调用发布消息的方法去发布和调度监听器处理这个消息.

   下面是个简单的实践:

  

 

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值