登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
业界
›
Spring boot 中 CommandLineRunner 在服务启动完成后自 ...
Spring boot 中 CommandLineRunner 在服务启动完成后自定义执行
[ 复制链接 ]
官厌
昨天 17:40
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
转载请注明出处:
以下是 Spring boot中 CommandLineRunner 的定义:
package org.springframework.boot;
@FunctionalInterface
public interface CommandLineRunner {
void run(String... args) throws Exception;
}
复制代码
CommandLineRunner 是 Spring Boot 提供的一个重要接口,用于在应用程序启动完成后执行特定逻辑。
关键特性:
@FunctionalInterface:标记为函数式接口,支持 Lambda 表达式
run(String... args):核心方法,在Spring Boot应用启动完成后执行
args参数:接收命令行参数
throws Exception:允许抛出异常
使用场景
应用启动后初始化数据
执行一次性任务
启动后台服务
验证配置信息
1. 基础实现方式
@Component
public class StartupRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("Application started with command-line arguments: " + Arrays.toString(args));
// 处理命令行参数
for (int i = 0; i < args.length; ++i) {
System.out.println("arg[" + i + "]: " + args[i]);
}
}
}
复制代码
2. 多个CommandLineRunner执行顺序
@Component
@Order(1)
public class FirstRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("First runner executed");
}
}
@Component
@Order(2)
public class SecondRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("Second runner executed");
}
}
复制代码
3.执行时机
CommandLineRunner 的 run() 方法在以下阶段执行:
Spring Boot应用完全启动
SpringApplication.run() 方法完成
Web服务器已启动并监听端口(如果是Web应用)
所有 @PostConstruct 方法执行完毕
在 ApplicationReadyEvent 发布之前
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
Spring
boot
CommandLineRunner
服务
启动
相关帖子
Spring Cloud分布式事务(基于Seata AT模式,集成Nacos)--学习版
拆解一个真实电商项目:微服务架构中的服务治理与性能优化
拆解一个真实电商项目:微服务架构中的服务治理与性能优化
Spring使用el表达式
Spring BeanDefinitionRegistry 接口
Spring Cloud Gateway WebFlux 模式架构分析
Spring两大特性 AOP和IOC
Spring Cloud Gateway 源码分析一
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
Spring Cloud分布式事务(基于Seata AT模式,集成Nacos)--学习版
2
229
米嘉怡
2025-11-27
业界
拆解一个真实电商项目:微服务架构中的服务治理与性能优化
1
599
司寇涵涵
2025-11-30
业界
拆解一个真实电商项目:微服务架构中的服务治理与性能优化
1
912
蟠鲤
2025-11-30
业界
Spring使用el表达式
0
478
琉艺戕
2025-11-30
安全
Spring BeanDefinitionRegistry 接口
0
387
剽达崖
2025-11-30
业界
Spring Cloud Gateway WebFlux 模式架构分析
0
526
国瑾瑶
2025-12-05
业界
Spring两大特性 AOP和IOC
0
392
赙浦
2025-12-05
业界
Spring Cloud Gateway 源码分析一
0
380
忌才砟
2025-12-06
业界
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
0
834
人弧
2025-12-06
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
官厌
昨天 17:40
关注
0
粉丝关注
26
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
anyue1937
9994893
kk14977
6845355
3934307807
991122
4
xiangqian
638210
5
宋子
9987
6
闰咄阅
9991
7
刎唇
9993
8
俞瑛瑶
9998
9
蓬森莉
9952
10
匝抽
9986
查看更多