![](/img/trans.png)
[英]Is there a replacement of PropertySourcesBinder in Spring Boot 2.X.X?
[英]Spring Boot 2.x.x - Combine 2 conditions in @ConditionalOnProperty
我有以下界面:
@Primary
@ConditionalOnProperty(value = "ms.couchbase.enabled", havingValue = "true", matchIfMissing = true)
@ConditionalOnProperty(value = "iiams.switch.iiamsSingleProcessIdPer100", havingValue = "true", matchIfMissing = true)
public interface AsyncCommonRepository extends CouchbaseRepository<CouchbaseDocument, Long> { }
当然这不会编译。
我想要的只是以某种方式将这两个@ConditionalOnProperty
结合起来。 我应该使用@ConditionalOnExpression
吗?
提前致谢!
您可以使用AllNestedConditions
组合两个或多个条件:
class AsyncCommonRepositoryCondition extends AllNestedConditions {
AsyncCommonRepositoryCondition() {
super(ConfigurationPhase.PARSE_CONFIGURATION);
}
@ConditionalOnProperty(value = "ms.couchbase.enabled", havingValue = "true", matchIfMissing = true)
static class CouchbaseEnabled {
}
@ConditionalOnProperty(value = "iiams.switch.iiamsSingleProcessIdPer100", havingValue = "true", matchIfMissing = true)
static class SingleProcessIdPer100 {
}
}
然后可以在您的存储库上使用此条件:
@Primary
@Conditional(AsyncCommonRepositoryCondition.class)
public interface AsyncCommonRepository extends CouchbaseRepository<CouchbaseDocument, Long> { }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.