SpringBoot运行流程源码分析:run方法流程及监听器( 五 )
自定义实现类比较简单 , 可像通常实现一个接口一样 , 先创建类 MyApplicationRunListener , 实现接口 SpringApplicationRunListener 及其方法 。 然后在对应的方法内实现自己的业务逻辑 , 以下示例代码中只简单打印方法名称 。 与普通接口实现唯一不同的是 , 这里需要指定一-个参数依次为 SpringApplication 和 String[ ]的构造方法 , 不然在使用时会直接报错 。
public class MyApplicationRunListener implements SpringApplicationRunListener {public MyApplicationRunListener ( SpringApplication application, String[]args){System. out . println("MyApplicationRunListener constructed function");@Overridepublic void starting() {System. out . println("starting...");@Overridepublic void environmentPrepared(ConfigurableEnvironment environment) {System. out. println(" environmentPrepared...");//在此省略掉其他方法的实现 }
【SpringBoot运行流程源码分析:run方法流程及监听器】当定义好实现类之后 , 像注册其他监听器一样 ,程序在 spring.factories 中进行注册配置 。 如果项目中没有 spring.factories 文件 , 也可在 resources 目录下先创建 META-INF 目录 , 然后在该目录下创建文件 sprig.factories 。
spring.factories 中配置格式如下 。
# Run Listenersorg. springframework. boot . SpringApplicationRunListener=\com. secbro2. learn. listener . MyApplicationRunListener
启动 Spring Boot 项目 , 你会发现在不同阶段打印出不同的日志 , 这说明该实现类的方法已经被调用 。
本文给大家讲解的内容是run方法核心流程 SpringApplicationRunListener 监听器
- 下篇文章给大家讲解的是初始化ApplicationArguments和初始化 ConfigurableEnvironment;
- 觉得文章不错的朋友可以转发此文关注小编;
- 感谢大家的支持!
- 文件系统(02):基于SpringBoot管理Xml和CSV
- SpringBoot2.x入门到项目实战课程系列(第二章)
- 第2天 | 12天搞定Python,运行环境(详细步骤)
- SpringBoot集成Mybatis
- 大牛深入解析SpringBoot核心运行原理和运作原理源码
- SpringBoot写后端接口,看这一篇就够了
- 首届互联网营销师新职业峰会成功举行业运行规范组建仪式
- 美国跨境物流空运FBA双清到门是什么操作流程呢?
- 苹果M1运行Windows 10比微软Surface快2倍
- M1处理器MacBook Air:成功运行Windows版《巫师3》