ApplicationEvent 和 ApplicationListener:
ApplicationEvent 是事件对象的基类,而 ApplicationListener 是观察者接口。通过实现 ApplicationListener 接口,你可以定义自己的观察者来监听特定类型的事件。当事件发布时,注册的观察者将接收到相应的事件通知。
ApplicationContext:
ApplicationContext 是 Spring Framework 中的核心容器。它充当事件的发布者,并负责管理观察者(即 ApplicationListener)的注册和通知。当发生事件时,ApplicationContext 将事件通知所有对该事件感兴趣的观察者。
@EventListener 注解:
Spring Framework 提供了 @EventListener 注解,用于简化事件监听器的创建。通过在方法上添加 @EventListener 注解,你可以将该方法标记为事件监听器,并且方法的参数类型决定了它所监听的事件类型。当相应的事件发布时,被标记的方法将被调用。