SpringBoot启动初始化配置之ApplicationRunner

问题

最近需要在Spring Boot启动的时候,需要初始化第三方SDK配置,才能使用自己这个Spring Boot服务。

解决思路

使用Spring的ApplicationRunner进行初始化第三方SDK配置。Spring还有另外一个初始化接口CommandLineRunner,这里选择ApplicationRunner。

步骤

CustomApplicationRunner.java

java 复制代码
package com.xxx.init;

import com.xxx.XxxUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;

import java.io.IOException;

@Slf4j
@Component
public class CustomApplicationRunner implements ApplicationRunner {
    @Value("classpath:xxx_client_config.properties")
    private Resource resource;
    @Override
    public void run(ApplicationArguments args) {
        try {
            if (XxxUtil.getInstance().init(resource.getInputStream())){
                log.info("xxx SDK 初始化成功");
            } else {
                log.error("xxxx SDK 初始化失败");
            }
        } catch (IOException e) {
            log.error("xxx SDK 初始化失败", e);
        }
    }
}

创建好这个ApplicationRunner实现类之后,然后,再启动Spring,Spring就会去初始化这个配置了。

参考

相关推荐
久美子14 小时前
Qoder 使用指南:从配置到落地
后端
tyung14 小时前
Go 手写 Wait-Free MPSC 无界队列:SwapPointer 实现多生产者无锁入队
后端·go
张不才14 小时前
CPU 100% 了怎么办?Java 性能排障的标准化操作
java·后端
鱼人14 小时前
Redis、网关负载均衡为什么不能用普通取模哈希?
后端
juejin99815 小时前
Claude Code Lab-3(下):三能力 MCP Server
后端
java小白小15 小时前
SpringBoot(07):事务管理——@Transactional 你真的用对了吗?
后端
shepherd11115 小时前
吞吐量提升 10 倍:高并发大批量数据处理任务的架构演进与性能调优
java·后端·架构
java小白小15 小时前
SpringBoot(05):Spring Data JPA——用面向对象的方式操作数据库
后端
juejin99816 小时前
Claude Code Lab-2(上):自然语言查库助手
后端
java小白小16 小时前
SpringBoot(06):多数据源配置——一个项目连多个库怎么做
后端