问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SpringBoot:如何书写一个自定义的Enable*注解

发布网友 发布时间:2023-02-21 01:02

我来回答

1个回答

热心网友 时间:2023-10-02 09:23

1.新建自定义的注解

2.应用此注解到配置类

3.这时候需要在EnableCustomFeature 类中通过@Import的方式引入一系列需要前置处理的Bean类

上述通过@Import方式做的原因,主要是将@Import标记的配置类中的bean作为ApplicationContext处理

使用Selector选择器启用Enable 自定义注解

示例如下:

上述示例中,自定义的注解中有一个criteria自定义注解属性字段,默认值为default,后面我们需要做的就是根据criteria的值激活两种不同的bean功能集合:

所以如果criteria字段值为 "default",就会加载SomeBeanConfigurationDefault, 否则就是加载SomeBeanConfigurationType1。

参考链接: http://www.java-allandsundry.com/2015/04/spring-enable-annotation-writing-custom.html
SpringBoot的自定义配置

打开SpringBoot项目的resources目录,在项目的类路径下新建一个test.properties自定义配置文件,在该配置文件中编写需要的配置属性 在com.david.pojo包下新创建一个配置类MyProperties,提供 test.properties 自定义配置文件中对应的属性,并根据@PropertySource注解的使用进行相关配置 主要是一个自定义配置类,通...

SpringBoot项目主启动类上常用的注解释意

一、SpringCloud相关注解 1、@SpringBootApplication:标记该项目为SpringBoot项目 2、@EnableCircuitBreaker:启动断路器,业务类启用@HystrixCommand和@HystrixProperty用于降级处理 3、@EnableEurekaClient:启动客户端服务注册功能 4、@EnableEurekaServer:启动服务注册中心功能 5、@EnableFeignCl...

spring boot有哪些重要的注解?

注解springbootapplication包含注解如下:1、@SpringBootConfiguration:读取配置文件,配置文件的路径是当前根目录(src/main/resources/application.yml等)。2、EnableAutoConfiguration:开启自动配置,扫描当前的所有依赖的jar包,发现新的依赖出现将会将会根据依赖完各种自动配置(扫描start_web,自动配置内置tomcat...

Spring Boot 最核心的 25 个注解,都是干货!

这个注解就是 @Configuration 注解的变体,只是用来修饰是 Spring Boot 配置而已,或者可利于 Spring Boot 后续的扩展。5、@ComponentScan 这是 Spring 3.1 添加的一个注解,用来代替配置文件中的 component-scan 配置,开启组件扫描,即自动扫描包路径下的 @Component 注解进行注册 bean 实例到 context ...

springclolud 启动类添加@EnableDiscoveryClient启动报错的问题

我们在创建一个springboot项目时,并在pom文件中添加了Eureka客户端的依赖,并在启动类中添加了@EnableDiscoveryClient的注解,如下图所示 这时候启动会报java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;)V的错误 这是由于spring boot版本...

@SpringBootApplication包含的三个注解及其含义

第一个:@SpringBootConfiguration(在这个类的源码中又有一个Configuration的注解)Configuration这个注解的作用就是声明当前类是一个配置类,然后Spring会自动扫描到添加了@Configuration的类,读取其中的配置信息,而@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类,项目中只能有一个。所以一般...

210630:springBoot自动配置-自定义start

SpringBootApplication是一个复合注解或派生注解,在@SpringBootApplication中有一个注解@EnableAutoConfiguration,翻译成人话就是 开启自动配置 ,其定义如下:而这个注解也是一个派生注解,其中的关键功能由@Import提供,其导入的AutoConfigurationImportSelector的selectImports()方法通过SpringFactoriesLoader....

SpringBoot的自动装配(一)

@ComponentScan是用来扫描路径的,如果不置顶特定的扫描路径的话,扫描的路径是当前修饰的类所在的包及其子包。而@SpringBootConfiguration这个注解的本质就是@Configuration注解。所以在这里面跟SpringBoot自动装配有关系的就只有一个了:@EnableAutoConfiguration     3、@EnableAutoConfiguration &...

SpringBoot项目结构及功能

SpringBootConfiguration:Spring Boot的配置类:标注在某个类上,表示这是一个Spring Boot的配置类; @Configuration:配置类上来标注这个注解; 配置类 --- 配置文件;配置类也是容器中的一个组件;@Component EnableAutoConfiguration:开启自动配置功能; 以前我们需要配置的东西,Spring Boot帮我们...

springboot怎么满足一个条件时执行一个方法

这类条件注解可以使用在方法上,也可以使用在类上,用在类上时,通常是@EnableXXX类型的注解,本质上没有发生变化。用在方法上时,表示满足条件就执行该方法;用在类上时,表示满足条件就加载某个类,在我们自定义配置时时使用得比较多。Spring Boot中常用的条件注解有:(1)@ConditionalOnBean,表示:...

自定义 自定义标签 自定义标签怎么设置 QQ自定义 自定义排序怎么设置 自定义是什么意思 自定义序列怎么设置 主题怎么自定义 自定义主题
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
word文档怎么删除多余表格内容 Excel表格技巧—怎么打开多个独立窗口 如何在一个窗口内显示两个或多个不同的界面? 如何让多个标签页在同一个窗口中? 现在从赤峰寄东西到深圳要多长时间 谢谢! 想在深圳邮寄到老家内蒙古赤峰一张木质床怎么办谁知道谢谢 想从深圳到内蒙赤峰巴林右旗邮寄衣服,大概50斤左右,要多少钱 施华洛世奇是什么材质的首饰 卷毛最强出装 卷毛如何答理 自定义注解实现解密+单个属性解密 自定义注解的使用 5wled灯24小时开一年耗电多少 如果灯泡5w输入220一240v一天二十四小时亮着要耗多少度电? 5W灯泡一时用了多少度电 如何把海康网盘上传添加到鼠标右键里 oppo R9通话壁纸怎么设置啊?谢谢啦? 洁癖,无法停止想象 端午节粽子种类你知道几个 之前备案的信息错误重新换域名重新备案会改过来吗 域名备案变更 试图近义词是什么 企图的意思相近的词语 投资理财月月升是不是到了一个月红利和本金都返到银行卡里? 灯泡A-36V 5W 灯泡B 220V 5W的 各一天24小时用电多度 少钱啊 一样么? 怎么算啊 梦见自己家门口有好多猪皮什么意思 考科目一进去没有二维码可以吗 科目二过了打印成绩单没有二维码怎么办 熟毛嗑回生怎么办? 最大的数学单位是什么 注解+反射实现自定义注解赋值 女人梦见青梨是什么意思 金立f100怎么解锁 苹果换手机订阅没了 动物都要经历哪四个阶段 防溺水观后感家长篇2022精选 梦见梨树上结满了青梨 黑豆粉的家常做法大全怎么做好吃视频 梦到梨树上结了好多青梨 幼儿心理健康论文参考文献? 汽车烟筒漏水是怎么回事? 汽车烟筒滴水是什么情况 汽车烟囱滴水怎么回事? 秋天婴儿睡觉穿什么?婴儿秋天睡觉穿什么? 中央空调面板显示lock是什么意思 立秋后宝宝要穿袜子吗 立秋后宝宝穿什么衣服 冻结后有什么后果 请问被封了,好友看见的是什么状态? 梦见梨树上有青梨 农商银行超出单月支付限额怎么转钱给客户