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

参考

相关推荐
lemon_sjdk13 小时前
Spring 容器与 Bean 深度解析:从概念到实践
java·网络·spring·webflux
铁皮饭盒13 小时前
阿里ASR语音转文字,用JS模拟微信
前端·javascript·后端
计算机魔术师13 小时前
工信部发布首部L3/L4自动驾驶系统安全要求强制性国标,2027年7月实施
人工智能·后端·自动驾驶·系统安全
程序员爱钓鱼13 小时前
Go 数字类型详解
后端·面试·go
程序员爱钓鱼13 小时前
Rust Move 详解:所有权移动与变量失效
后端·面试·rust
过往的时光13 小时前
Spring Boot、Spring Cloud 与 Spring Cloud Alibaba 版本对照终极指南
java·spring boot·spring cloud
小比特-combat13 小时前
FreeRTOS任务通知
java·服务器·前端
snow@li13 小时前
SpringBoot:Payload统一响应包装/全景深入梳理
java·spring boot·后端
中国搜索直付通13 小时前
游戏车机端支付通道,会是下一个被低估的合规战场吗?
java·大数据·开发语言·人工智能·游戏
AKA__Zas13 小时前
芝士算法(位运算)
java·开发语言·算法·leetcode·学习方法