SpringBoot项目启动时的初始化操作

SpringBoot项目启动时的初始化操作包括:

类的静态代码、类的构造函数、@Autowired装载变量、@PostConstruct修饰方法、实现ApplicationRunner接口、实现CommandLineRunner接口,其执行的先后次序为:

static > constructer > @Autowired > @PostConstruct > ApplicationRunner > CommandLineRunner

这里主要介绍实现ApplicationRunner接口、CommandLineRunner接口的方式进行初始化操作

实现 ApplicationRunner 接口

java 复制代码
@Component
@Order(1) /// 多个类实现该接口的优先级
public class MyApplicationRunner implements ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        System.out.println("order1:MyApplicationRunner");
 
    }
}

实现 CommandLineRunner 接口

java 复制代码
@Component
@Order(2)  /// 多个类实现该接口的优先级
public class MyCommandLineRunner implements CommandLineRunner {
    @Override
    public void run(String... strings) throws Exception {
        System.out.println("order2:MyCommandLineRunner");
    }
}
相关推荐
再吃一根胡萝卜36 分钟前
Redis 都有哪些用处?都会用在什么地方?
后端
再吃一根胡萝卜1 小时前
分布式与分布式锁:从访问量到数据一致性
后端
再吃一根胡萝卜1 小时前
分库分表:为什么我不建议一上来就分表
后端
再吃一根胡萝卜1 小时前
MySQL 慢查询优化:从定位到根治的完整思路
后端
Nturmoils2 小时前
订单查询丢数据,查了半天原来是 WHERE 惹的祸
数据库·后端
叫我Paul就好2 小时前
自从用上 Agents View 之后, 我的心力交瘁感消失了
后端
SamDeepThinking2 小时前
组合还是继承?我在项目里主要看这两个判断
java·后端·面试
niuju2 小时前
一种基于 Agent 的需求规范化闭环实践:让合规与规范内建于流程
后端
团团崽_七分甜2 小时前
四大数据库底层原理详解
后端
glartchen2 小时前
使用 Pixi 配置 Whisper 环境,实现采用本地大模型读取视频字幕
后端