Spring boot中的注解@ConditionalOnProperty,可以通過配置文件中的屬性值來判定configuration是否被注入.
配置類:
@Configuration
@ConditionalOnProperty(prefix = "x.y", name = "test", havingValue = "1", matchIfMissing = true)
public class XConfiguration {...}
配置文件:
x.y.test=1
解釋:
prefix為配置文件中的前綴.
name為配置的名字.
havingValue是與配置的值對比值,當兩個值相同返回true,配置類生效.
matchIfMissing屬性為true時,配置文件中缺少對應的value或name的對應的屬性值,也會注入成功.