当前位置: 首页 > news >正文

spring event事件(四)内部事件(1)ApplicationReadyEvent

一、介绍

1、简介

ApplicationReadyEvent 是 Spring Boot 提供的一个事件,它表示:整个 Spring 应用上下文已完全启动,Spring Boot 应用已准备好接受请求。

2、场景用途

通常用于在 Spring Boot 启动完成后执行一些初始化逻辑,例如:

  • 启动额外的线程、定时任务

  • 连接外部服务(如 HTTP、MQ、WebSocket)

  • 加载插件

  • 打印启动信息

二、使用方法

1、方法1——监听 ApplicationReadyEvent 事件
@Component
public class MyStartupRunner implements ApplicationListener<ApplicationReadyEvent> {@Overridepublic void onApplicationEvent(ApplicationReadyEvent event) {System.out.println("✅ Application is ready.");// 可以安全地使用 Spring 容器中的 BeanApplicationContext context = event.getApplicationContext();MyService myService = context.getBean(MyService.class);myService.doSomething();}
}

2、方法2——使用 @EventListener 更简洁

@Component
public class StartupListener {@EventListenerpublic void onApplicationReady(ApplicationReadyEvent event) {System.out.println("🚀 App is fully ready");// 比如:启动插件的 HTTP 服务}
}

三、与其他启动事件的对比

事件含义
ApplicationStartingEvent应用刚启动,还未创建上下文
ApplicationPreparedEvent上下文已创建但未刷新
ContextRefreshedEventSpring 容器刷新完成
ApplicationReadyEventSpring Boot 应用完全启动并就绪
ApplicationFailedEvent启动失败

相关文章:

  • 介绍Buildroot
  • 2025ICPC南昌邀请赛题解
  • 记录学习的第三十六天
  • ZYNQ Cache一致性问题解析与实战:从原理到创新优化
  • PEFT简介及微调大模型DeepSeek-R1-Distill-Qwen-1.5B
  • mysql不能聚合之数据清洗逗号
  • 第7天-Python+PyEcharts实现股票分时图实战教程
  • OD 算法题 B卷 【需要打开多少监视器】
  • 算法打卡第一天
  • 每日算法刷题Day10 5.19:leetcode不定长滑动窗口求最长/最大4道题,结束定长滑动窗口,用时1h
  • 大模型的开发应用(三):基于LlaMAFactory的LoRA微调(上)
  • CSS之box-sizing、图片模糊、计算盒子宽度clac、(重点含小米、进度条案例)过渡
  • 再议AOI算法
  • 谈谈mysql的日志的用途
  • Google精准狙击OpenAI Codex,发布AI编程助手Jules!
  • Kubernetes在线练习平台深度对比:KillerCoda与Play with Kubernetes
  • Rofin PowerLine E Air维护和集成手侧激光Maintenance and Integration Manual
  • 本地ip如何映射到外网?借助端口映射软件把内网地址给别人用
  • Python 包管理工具核心指令uv sync解析
  • 学习STC51单片机08(芯片为STC89C52RC)
  • 新型基因编辑工具可精准嵌入完整基因
  • 时隔5个月,辽沈银行行长再调整
  • 最高法:政府信息公开案件审理应避免泄露国家秘密、商业秘密
  • 中疾控专家:新冠感染的临床严重性未发生显著变化
  • 山西资深公益人士孙超因突发急病离世,终年37岁
  • 研究显示:肺活量衰减始于20至25岁