实现插拔式组件的两种方式
目的:
对springboot框架进行新插件的引用时,想通过简单的方式进行引入或排除。
实现过程:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
@Import(value = {Config.class})
public @interface EnableFeignBuilderWithLogFMT {
}
@ComponentScan
@Configuration
public class AutoConfiguration {
@Configuration
@ConditionalOnProperty(name = "tonfay.logger.trace.enabled", havingValue = "true")
class Config{
@Bean
@ConditionalOnMissingBean
public Object test() {
log.info("test");
return null;
}
}
}
XML:
tonfay.logger.trace.enabled=true
依赖:
spring-context
spring-boot-autoconfigure
评论
发表评论
|
|