相关疑难解决方法(0)

Spring Boot中如何获取文件属性的内容

作为标题,我的自定义属性:

#app settings
my.chassisNum=10
Run Code Online (Sandbox Code Playgroud)

代码:

@PropertySource("classpath:appconf.properties")
@ConfigurationProperties(prefix = "my" )
@Component
public class AppConfig {

    private String chassisNum;

    public String getChassisNum() {
        return this.chassisNum;
    }

    public void setChassisNum(String chassisNum) {
        this.chassisNum = chassisNum;
    }
}
Run Code Online (Sandbox Code Playgroud)

当 Spring Boot 启动完成时,我得到的“chassisNum”值为 10。当我在 spring-boot 未启动完成时在其他地方得到它时,它得到“null”

@Component
public class CreateBaseFolder {

    private final Logger logger = LogManager.getLogger(CreateBaseFolder.class);
    private File f; 
    @Autowired
    AppConfig appconf;

    public CreateBaseFolder() {

        System.out.println(appconf.getChassisNum());


    } 
Run Code Online (Sandbox Code Playgroud)

我尝试了很多方法来获取它的价值,但都是错误的。例如:实现 InitializingBean、@DependsOn ....

spring-boot

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

spring-boot ×1