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就会去初始化这个配置了。

参考

相关推荐
Jesse_EC几秒前
我给消息推送加了 Publisher Confirm,然后亲手引入了一个竞态
java
名字还没想好☜几秒前
Go 1.23 range-over-func 迭代器实战:自定义可迭代类型、提前退出与惰性求值
开发语言·后端·golang·go·迭代器
S3rein1 分钟前
JAVA多线程手撕
java·多线程
对象存储与RustFS3 分钟前
给 Kubernetes 找一个对象存储后端:RustFS Helm 部署 + 应用接入实录
后端·云原生·kubernetes
用户8181870627463 分钟前
第7章 死锁排查实录:jstack定位死锁的完整流程
java·后端
逻辑帧4 分钟前
给 AI 时代找工作的同学一些实用建议
前端·后端
喵同志不止步于码农21 分钟前
Java Caffeine 快速入门
java·开发语言·后端·并发·缓存一致性
Java成神之路-23 分钟前
Java 并发灵魂拷问:notify/signal 唤醒顺序是规范还是实现?
java
Java牛马36 分钟前
Caffeine 缓存及其应用相关总结
java·redis·缓存·caffeine·数据一致性·本地缓存
东风破_1 小时前
NestJS CRUD 实战:用 Todos 模块打通 Controller-Service-Module 三层
后端