问题
最近需要在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就会去初始化这个配置了。