<返回更多

SpringBoot 在配置文件中配置监听器

2023-05-28    赶影场
加入收藏

开始

可执行组件

八种类型

PropertySourceLoader,属性源加载器,用于载入属性源。

SpringApplicationRunListener,Spring应用运行监听器,用于监听Spring应用运行过程中的各种事件。

SpringBootExceptionReporter,SpringBoot异常报告器。

ApplicationListener,应用监听器,监听应用发生的各种事件。

EnvironmentPostProcessor,环境后置处理器。

FAIlureAnalyzer,故障分析器。

FailureAnalysisReporter,故障分析报告器。

PropertiesPropertySourceLoader

YamlPropertySourceLoader

EventPublishingRunListener

EventPublishingRunListener,事件发布运行监听器。这是SpringBoot的spring.factories中配置的唯一一个Spring应用运行监听器。查看该监听器的源代码,发现它的作用就是通过一个多路广播器,将SpringBoot运行状态的变化,构建成事件,并广播给各个监听器。

ClearCachesApplicationListener

ParentContextCloserApplicationListener

FileEncodingApplicationListener

AnsiOutputApplicationListener

AnsiOutputApplicationListener,Ansi输出应用监听器。该监听器的作用是,当收到应用环境准备就绪事件时,对Ansi输出的相关状态进行设置,并绑定到应用环境中。

ConfigFileApplicationListener

DelegatingApplicationListener

DelegatingApplicationListener,委托应用监听器。这个监听器比较有意思,它本身没有实质性的处理某事件。而是在应用环境准备就绪事件发生时,通过环境中的配置的context.listener.classes,去搜集相应的监听器。如果收集到,就会创建一个简单事件广播器实例,放到类属性上,同时,还会把收集到的监听器,绑定到该广播器上。

该监听器的另一个特性时,无论发生何事件,只要广播器实例不为空,就利用该广播器广播该事件。

换一种方式配置监听器

在application.yml中添加如下配置:

重启项目,发现监听器开始发挥作用,控制台显示如下:

相关

SpringBoot的优点,有哪些值得我们使用的地方

自定义SpringApplication初始化器和监听器

SpringBoot中,如何自定义Spring应用运行时监听器

自定义SpringBoot的Banner和Bean名称是怎么来的?

SpringBoot如何使用命令行参数改变运行时端口号

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>