SpringBoot @Profile的使用
SpringBoot @Profile@Profile 可以和 @Bean 一起使用,
@Profile 可以和 @Bean 一起使用, 当配置文件, 例如application.properties等, 添加了下列条目👇
spring.profiles.active: profileName
或着
spring.profiles.include: profileName
加注了@Profile("profileName")
和@Bean
的方法就会在启动时被执行, 当然,类要加@Configuration
,甚至@Component
就行,当然,@Bean
应该配@Configuration
例如
import org.springframework.context.annotation.*; import org.springframework.stereotype.Component; @Component public class ImportProfile { @Profile("ProfileName") @Bean public Object beanMethod666() { System.out.println("\n\n\n👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇"+ """ \n 当 active 或 include 了 这个方法上面的 @Profile("ProfileName") 中的 ProfileName (区分大小写) 这个方法就会被执行 例如: spring.profiles.active= ProfileName 或 spring.profiles.include= ProfileName 控制台就会输出这条信息\n """ + "👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆\n\n\n "); return "hello"; } }
也可以同时匹配多个名称@Profile({"name1","name2","name3"})
import org.springframework.context.annotation.*; import org.springframework.stereotype.Component; @Component @Profile({"是否支持@符号","启用ImportProfile类","可以使用多个名称", "可以使用@@@@@@符号", "可以支持中文" , "类上的@Profile相当于总开关" , "类上的@Profile可以没有"}) public class ImportProfile { @Profile({"ProfileName", "可以用字符串数组匹配多个", "名称2", "名称3" }) @Bean public Object beanMethod666() { System.out.println( """ \n\n\n👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇 当 active 或 include 了 这个方法上面的 ProfileName (区分大小写) @Profile({"ProfileName", "可以用字符串数组匹配多个", "名称2", "名称3" }) 中的其中一个名称, 这个方法就会被执行 例如: spring.profiles.active: 启用ImportProfile类 或 spring.profiles.include: 可以用字符串数组匹配多个 控制台就会输出这条信息 👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆\n\n\n """); return new ImportProfile(){}; //返回一个匿名内部类意思意思 } }
中文.properties中会转义显示
到此这篇关于SpringBoot @Profile的使用的文章就介绍到这了,更多相关SpringBoot @Profile内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Mybatis(ParameterType)传递多个不同类型的参数方式
这篇文章主要介绍了Mybatis(ParameterType)传递多个不同类型的参数方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-04-04关于Java Guava ImmutableMap不可变集合源码分析
这篇文章主要介绍Java Guava不可变集合ImmutableMap的源码分析的相关资料,需要的朋友可以参考下面具体的文章内容2021-09-09FactoryBean BeanFactory方法使用示例详解讲解
这篇文章主要为大家介绍了FactoryBean BeanFactory方法使用示例详解讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-12-12SpringCloud-Alibaba-Sentinel服务降级,热点限流,服务熔断
这篇文章主要介绍了SpringCloud-Alibaba-Sentinel服务降级,热点限流,服务熔断,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-12-12SpringBoot项目速度提升之延迟初始化(Lazy Initialization)详解
延迟初始化(Lazy Initialization)是一种在需要时才创建或加载对象的策略,以减少启动时间和资源消耗,本文就来讲讲延迟初始化的具体使用吧2023-05-05
最新评论