springboot根据yml配置文件选择性加载bean
1 @Slf4j 2 @Aspect 3 @Component 4 @ConditionalOnProperty(value = "localCache.apiCache", havingValue = "true") 5 public class ApiLocalCacheHandler { 6 //这个bean要做的事情 7 }
yml文件部分配置如下:
# 本地缓存的基础配置
localCache:
apiCache: true #是否开启接口级本地缓存
apiCache设置为true的时候才会加载切面ApiLocalCacheHandler,以上yml文件未配置的情况下就不再加载这个切面
还可以通过@Value("${localCache.apiCache}")获取配置信息,但是在配置缺失的情况下启动就会报错,不推荐采用这种方式读取配置文件,而采用如下方式会更好
1 @Data 2 @Configuration 3 @ConfigurationProperties(prefix = "localCache") 4 public class LocalCacheConfig { 5 //这里是读取你的配置 6 private Boolean apiCache; 7 }
本文版权归evasean所有,转载请标明出处
http://www.cnblogs.com/evasean/