spring-boot @EnableConfigurationProperties与@ConfigurationProperties的关系
1.@ConfigurationProperties 单独使用时仅代表将配置文件中的实行指定给当前类 需要配合@Coment才会配注入到ioc中
2.@EnableConfigurationProperties 当该中需要注入由@ConfigurationProperties配置的bean时 如果该Bean还没有注入ioc中 可以通过
@Configuration
@ConditionalOnClass(KiteService.class)
@EnableConfigurationProperties(KiteProperties.class)
@Slf4j
public class KiteAutoConfigure {
@Autowired
private KiteProperties kiteProperties;
@Bean
@ConditionalOnMissingBean(KiteService.class)
@ConditionalOnProperty(prefix = "kite.example",value = "enabled", havingValue = "true")
KiteService kiteService(){
return new KiteService(kiteProperties);
}
}
@Data
@ConfigurationProperties("kite.example")
public class KiteProperties {
private String host;
private int port;
}

浙公网安备 33010602011771号