首页 > 其他分享 >SpringBoot复习:(19)Condition接口和@Conditional注解

SpringBoot复习:(19)Condition接口和@Conditional注解

时间:2023-08-12 10:32:18浏览次数:40  
标签:SpringBoot 19 Conditional 接口 matches 注解 方法 Condition


Condition接口代码如下:

public interface Condition {

	boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata);

}

它是一个函数式接口,只有一个方法matches用来表示条件是否满足。matches方法中的ConditionContext类对象context可以通过getEnvironment方法获取环境对象。

@Conditional是一个注解:

public @interface Conditional {

	Class<? extends Condition>[] value();

}

它包含了一个Condition类型Class的数组。
@Conditional注解可以把多个实现了Condition接口的类对象聚合起来,只有所有的Condition类对象matches方法都返回ture时,和@Conditional一起配合使用的@Bean注解下的方法返回的bean才会被注入到容器。


标签:SpringBoot,19,Conditional,接口,matches,注解,方法,Condition
From: https://blog.51cto.com/amadeusliu/7056855

相关文章

  • 32.SpringBoot整合high-level-client
    idea中使用es创建一个bianen-search模块 在mydata文件夹下创建一个nginx文件夹:mkdirnginx随便启动一个nginx实例,只是为了复制出配置:dockerrun-p80:80--namenginx-dnginx:1.10 如下图可以看到启动好了nginx容器,当然这个容器我们只是为了用来复制它的配置文......
  • 19.17RU安装问题汇总
    问题概述19.17RU安装问题汇总一、lib库被其他用户使用二、CRS-1159:Theclustercannotbesettorollingpatchmode三、NoreadorwritepermissiontoORACLE_HOME/.patch_storage四、Datapatch:couldn'topenencmapgbk.enc五、CRS-6706:OracleClusterwareReleasepatch......
  • IIS8.5 Error Code 0x8007007e HTTP 错误 500.19的解决方法
    windowserver2012R2IIS8.5引用:https://www.52jbj.com/yunying/340443.htmlHTTP错误500.19-InternalServerError  无法访问请求的页面,因为该页的相关配置数据无效。    详细错误信息    模块DynamicCompressionModule    通知SendResponse    处......
  • 谷歌2023年4月19日最新更新规则及算法
    多年来,谷歌的的核心排名系统一直致力于奖励能够提供良好网页体验的内容,正如谷歌在 2011年提供的2019年更新,并于去年加入创建实用、可靠、以用户为中心的内容帮助页面的指南中所述。该帮助页面是谷歌的搜索要素的关键资源。会定期推荐希望使用Google搜索取得理想成效的用户,仔......
  • springboot jar thin
    springbootjarthinspringboot应用jar瘦身。springbootjar太大。jar与依赖包分离。两种方法,第一种,spring-boot-thin-launcher,他将依赖包以maven仓库的形式放到repository目录。第二种,将依赖包以jar包的方式放到一个目录下,比如libs目录。spring-boot-thin-launcher这种......
  • VS2019 C++ 调用python函数/类对象的方法
    1.环境配置VS工程配置要和python一致,安装的python如果是64位的,工程配置也要选成64位的在工程配置中添加包含目录和库目录,添加python环境目录里的include和libs文件夹路径。想要运行的keras-yolo3是在Anaconda中配置的环境,所以相应的文件夹路径可以在Anaconda的环境文件中......
  • Springboot跨域问题,options请求
    ......
  • SpringBoot打包war部署到tomcat
    项目结构:pom.xml:<!--①指定打包成war--><packaging>war</packaging><dependencies><!--starter-web:spring-webmvc+autoconfigure+logback+yaml+tomcat--><dependency><groupId>org.springframework.b......
  • 基于Springboot的短视频网站设计
    随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,短视频管理当然也不能排除在外。短视频网站是以实际运用为开发背景,运用软件工程开发方法,采用SPRINGBOOT+VUE.JS技术构建的一个管理系统。整个开发过程首先对软件系统进行......
  • 2023下半年产品经理NPDP认证8月19日开班
    产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。  【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是全球范围内产品开发与管理专业人士最杰出的倡导者,协助个人、企业......