Spring Boot 应用启动时打印配置类信息

因为项目中有些配置是在环境变量中指定的,所以想在启动时打印一下实际的配置参数,以方便确认配置是否正确。

下面是查到的比较优雅的写法:通过监听 ApplicationReadyEvent 事件,在事件触发时打印配置参数

java 复制代码
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.context.event.ApplicationReadyEvent;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Component;

@Component
@Slf4j
@RequiredArgsConstructor
public class MyApplicationListener {

    private final MyProperties myProperties;

    @EventListener(ApplicationReadyEvent.class)
    public void handleApplicationReadyEvent() {
        // 打印配置参数
        log.info("我的配置 {}", myProperties);
    }
}

其中 MyProperties 配置类上加了 Lombok 的 @Data 注解,会自动生成 toString 方法。

ApplicationReadyEvent 事件在 ApplicationContext 被初始化和刷新后,且应用程序已经准备好处理请求时触发。这是 Spring Boot 启动过程中的一个较晚阶段,确保所有初始化步骤都已完成。

相关推荐
LucianaiB18 分钟前
【邪修 QClaw】女朋友说我说话太直,我直接用QClaw来解决问题!
后端
疯狂的程序猴20 分钟前
Flutter应用代码混淆完整指南:Android与iOS平台配置详解
后端·ios
gelald28 分钟前
SpringBoot - 配置加载
spring boot·后端·spring
DyLatte30 分钟前
当我想把所有角色都做好时,就开始内耗了
前端·后端·程序员
蓝悦1 小时前
用 .bat 一键启动 Jupyter:多环境切换
后端
何陋轩1 小时前
Netty高性能网络编程深度解析:把网络框架核心讲透,让面试官刮目相看
后端·面试
落木萧萧8251 小时前
为什么我又写了一个 ORM 框架(MyBatisGX)
后端·架构
海南java第二人2 小时前
Spring Boot + Cursor 实战:从零到一搭建一个生产级用户中心
spring boot·ai coding
昵称为空C2 小时前
在复杂SpringBoot项目中基于hutool实现临时添加多数据源案例
spring boot·后端
金融数据出海2 小时前
韩国股票 API 对接指南 Seoul&KOSDAQ
后端