SpringBoot使用自定义属性服务

SpringBoot使用自定义属性服务,spring,spring-boot,properties,Spring,Spring Boot,Properties,我正在处理一个遗留项目,它有自己的PropertyService类来管理可重新加载的属性等等 这一切都很正常,但问题是现在我有了这个属性服务,用于我的项目,还有一个application.yml用于spring引导相关的属性 问题是:有没有一种方法可以告诉spring boot从属性提供程序(自定义类或某种适配器)加载属性 这样,我只能通过现有模块管理我的属性 谢谢你的帮助 尝试@ConfigurationProperties自定义属性加载(请参阅) 代码示例 @Configuration @C

我正在处理一个遗留项目,它有自己的PropertyService类来管理可重新加载的属性等等

这一切都很正常,但问题是现在我有了这个属性服务,用于我的项目,还有一个application.yml用于spring引导相关的属性

问题是:有没有一种方法可以告诉spring boot从属性提供程序(自定义类或某种适配器)加载属性

这样,我只能通过现有模块管理我的属性


谢谢你的帮助

尝试
@ConfigurationProperties
自定义属性加载(请参阅)

代码示例

@Configuration
@ConfigurationProperties(locations = "classpath:mail.properties", prefix = "mail")
public class MailConfiguration {

    public static class Smtp {

        private boolean auth;
        private boolean starttlsEnable;

        // ... getters and setters
    }

    @NotBlank
    private String host;
    private int port;  
    private String from;
    private String username;
    private String password;
    @NotNull
    private Smtp smtp;

    // ... getters and setters   

    @Bean
    public JavaMailSender javaMailSender() {
        // omitted for readability
    }
}
因此,您定义了一个bean,它实际上返回属性

我用“server.port”尝试过,所以在我的类中,我有@ConfigurationProperties(prefix=“server”)和一个名为“int-port”的proepty。然而,getter从未被调用。你确定你可以像那样覆盖spring启动属性吗?