Spring boot @ConditionalOnProperty 使用以及作用

这篇具有很好参考价值的文章主要介绍了Spring boot @ConditionalOnProperty 使用以及作用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

@ConditionalOnProperty

来源

import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;

即: 来源于Spring boot 中的自动化配置部分

实际作用:
通过读取本地配置文件中的值来判断 某些 Bean 或者 配置类 是否加入spring 中。
即 当前类通过 @Component 或者 @Configuration 注册实体到spring 中时,都可以通过 @ConditionalOnProperty 来控制是否加入或者说有无该项。

实际使用

@Component 或者 @Configuration 等同级,都置于类上

@ConditionalOnProperty(prefix = "my",name = "config.switch",havingValue = "true")

@ConditionalOnProperty(name = "my.kafka.enable", havingValue = "true")

prefix: 为配置前缀,可以没有
name: 如果有前缀则为前缀后面的所有
havingValue: 为配置项的值等于某一值时生效

在配置中如下:
yml 中

my:
  config:
    switch: true

properties 中文章来源地址https://www.toymoban.com/news/detail-696376.html

my.config.switch: true

实例:

@Configuration
@ConditionalOnProperty(prefix = "swagger", name = "enable", havingValue = "true")
public class SwaggerConfig {
	...........
}

到了这里,关于Spring boot @ConditionalOnProperty 使用以及作用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用IDEA创建使用 JDK8 的 2.x.x 版本的 Spring Boot 项目以及 Spring Boot 项目如何修改JDK版本

    目录 一、在阿里云上官网上创建项目 二、将 IDEA 中创建项目的源地址修改为阿里云官网 三、创建 3.x.x 的项目之后修改配置降低至 2.7.x 版本和使用 JDK8(修改 Spring Boot 的 JDK 版本同理) 从上面的 Spring Boot 官网的截图中可以发现,自 2023-11-24 之后,最后一个支持使用 JDK8 的

    2024年01月21日
    浏览(52)
  • 常用的 Spring Boot 注解及其作用

    Spring Boot 提供了许多注解来简化开发,并帮助开发者在 Spring 应用中实现各种功能。以下是一些常用的 Spring Boot 注解及其作用: @SpringBootApplication : 作用:用于标识主启动类,通常位于 Spring Boot 应用的入口类上。 功能:该注解整合了三个常用注解: @Configuration 、 @EnableAut

    2024年04月25日
    浏览(49)
  • Spring Boot中使用thymeleaf以及各种取值,判断,选择,截取等方式

    Spring Boot支持FreeMarker、Groovy、Thymeleaf和Mustache四种模板解析引擎,官方推荐使用Thymeleaf。 spring-boot-starter-thymeleaf 在Spring Boot中使用Thymeleaf只需在pom中加入Thymeleaf的starter即可: 在Spring Boot 1.5.9.RELEASE版本中,默认的Thymeleaf版本为2.1.6.RELEASE版本,这里推荐使用3.0以上版本。在pom中

    2024年02月10日
    浏览(32)
  • 【Spring Boot】缓存预热与缓存清除--原理、作用和目的

    在本文中,我们将详细讲解两个与缓存相关的重要概念: 缓存预热 和 缓存清除 。 我们将了解缓存的基本概念,然后分别介绍缓存预热和缓存清除的原理、作用和目的。 缓存是一种数据存储技术,用于存储经常访问的数据,以便在需要时快速获取 。通过缓存数据,可以 减

    2023年04月21日
    浏览(44)
  • Springboot自动装配:三个注解、Selector、spring.factories文件、@ConditionalOnProperty注解

    借鉴: 这个链接是包含run方法进来debug看整个过程的,建议先看:https://www.cnblogs.com/starsray/p/15580915.html https://blog.csdn.net/fengxiandada/article/details/130080828 1.创建springboot应用 如何创建一个spring boot应用?这就很简单了,可以使用idea自带的spring initializr帮助我们选择相应的场景启动

    2024年01月22日
    浏览(34)
  • 【Elasticsearch】spring-boot-starter-data-elasticsearch的使用以及Elasticsearch集群的连接

    更多有关博主写的往期Elasticsearch文章 标题 地址 【ElasticSearch 集群】Linux安装ElasticSearch集群(图文解说详细版) https://masiyi.blog.csdn.net/article/details/131109454 基于SpringBoot+ElasticSearch 的Java底层框架的实现 https://masiyi.blog.csdn.net/article/details/121534307 ElasticSearch对标Mysql,谁能拔得头筹

    2024年02月11日
    浏览(27)
  • 数据源作用以及spring配置数据源

    数据源,简单理解为数据源头,提供了应用程序所需要数据的位置。数据源保证了应用程序与目标数据之间交互的规范和协议,它可以是数据库,文件系统等等。其中数据源定义了位置信息,用户验证信息和交互时所需的一些特性的配置,同时它封装了如何建立与数据源的连

    2024年02月07日
    浏览(44)
  • Spring Cloud Alibaba全家桶(六)——微服务组件Sentinel介绍与使用

    本文小新为大家带来 微服务组件Sentinel介绍与使用 相关知识,具体内容包括 分布式系统存在的问题 , 分布式系统问题的解决方案 , Sentinel介绍 , Sentinel快速开始 (包括: API实现Sentinel资源保护 , @SentinelResource注解实现资源保护 ), Sentinel控制台 , Spring Cloud Alibaba整合

    2024年01月17日
    浏览(35)
  • Spring Boot项目中的Controller、Service、Mapper和Entity层的作用与联系

    在Spring Boot项目中,常见的四个层次是Controller层、Service层、Mapper层和Entity层。它们各自承担着不同的职责,但彼此之间存在着紧密的联系。本文将详细介绍这四个层次的作用与联系,并提供相关实例来说明它们之间的关系。 Controller层是Spring Boot应用程序的入口点,用于处理

    2024年02月10日
    浏览(34)
  • 【Spring Boot】 .mvn、.gitignore、HELP.md、mvnw、mvnw.cmd 文件的作用

    .mvn 目录: 包含用于 Maven Wrapper(mvnw 和 mvnw.cmd)的配置文件。Maven Wrapper 是一个用于封装 Maven 的工具,使得你的项目不需要提前安装 Maven。 .gitignore 文件: 包含了Git版本控制系统所需的忽略规则。这个文件用于指定哪些文件或目录应该被Git忽略,不纳入版本控制。 HELP.md 文

    2024年01月20日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包