发布网友 发布时间:2023-03-12 19:19
共1个回答
热心网友 时间:2023-05-10 12:04
在开发工作中,会遇到一种场景,做完某一件事情以后,需要广播一些消息或者通知,告诉其他的模块进行一些事件处理,一般来说,可以一个一个发送请求去通知,但是有一种更好的方式,那就是事件监听,事件监听也是设计模式中 发布-订阅模式、观察者模式的一种实现。
观察者模式:简单的来讲就是你在做事情的时候身边有人在盯着你,当你做的某一件事情是旁边观察的人感兴趣的事情的时候,他会根据这个事情做一些其他的事,但是盯着你看的人必须要到你这里来登记,否则你无法通知到他(或者说他没有资格来盯着你做事情)
要想顺利的创建*,并起作用,这个过程中需要这样几个角色:
ApplicationListener 接口
它是一个泛型接口,泛型的类型必须是 ApplicationEvent 及其子类,只要实现了这个接口,那么当容器有相应的事件触发时,就能触发 onApplicationEven t 方法。 ApplicationEvent 类的子类有很多,Spring 框架自带的如下几个。
相当于spring一些自动装配的事件触发会执行这个监听函数
实体类
自定义事件
自定义*
发送事件(业务层Service)
控制层
启动springboot项目,验证测试接口