前言:

在看@ConditionalOnBean注解的实现的时候,看到了SearchStrategy(直译过来是搜索策略)这个枚举类型,比较好奇。

SearchStrategy:

package org.springframework.boot.autoconfigure.condition;public enum SearchStrategy {CURRENT,/** @deprecated */@DeprecatedPARENTS,ANCESTORS,ALL;private SearchStrategy() {}
}

在官方文档中,它被解释为 bean工厂层次结构中bean的一些命名搜索策略。

枚举常量:

它的枚举常量有:

  • ALL:搜索整个层次结构,@ConditionOnBean中默认是ALL。

  • ANCESTORS:搜索所有祖先,但不搜索当前上下文。

  • CURRENT:仅搜索当前上下文。

  • PARENTS:已过时,搜索所有父母和祖先,但不是当前的上下文(在SpringBoot 2.0中,这个常量将被移除)。

方法:

values()

public static  SearchStrategy [] values()

按照声明的顺序返回一个包含此枚举类型常量的数组。此方法可用于迭代常量,如下所示:

for(SearchStrategy c:SearchStrategy.values())System.out.println(C);

返回:包含此枚举类型常量的数组,按声明的顺序排列

valueOf(String name)

public static  SearchStrategy  valueOf(String  name)

返回具有指定名称的此类型的枚举常量。该字符串必须与用于声明此类型中的枚举常量的标识符完全匹配。(不允许使用无关的空白字符。)
参数:name - 要返回的枚举常量的名称。
返回:具有指定名称的枚举常量
抛出:
IllegalArgumentException - 如果此枚举类型没有指定名称的常量
NullPointerException - 如果参数为null

SpringBoot中的SearchStrategy介绍相关推荐

  1. Springboot中的缓存Cache和CacheManager原理介绍

    一.背景理解 什么是缓存,为什么要用缓存? 程序运行中,在内存保持一定时间不变的数据就是缓存.简单到写一个Map,里面放着一些key,value数据,就已经是个缓存了.所以缓存并不是什么高大上的技术, ...

  2. SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍

    SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍 本篇博文将介绍几种如何处理url中的参数的注解@PathVaribale/@Requ ...

  3. 难以想象SpringBoot中的条件注解底层居然是这样实现的

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源 | https://urlify.cn/bm2qqi Spr ...

  4. 面试:SpringBoot中的条件注解底层是如何实现的?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源 | https://urlify.cn/bm2qqi Spr ...

  5. WebSocket的故事(六)—— Springboot中,实现更灵活的WebSocket

    概述 WebSocket的故事系列计划分五大篇六章,旨在由浅入深的介绍WebSocket以及在Springboot中如何快速构建和使用WebSocket提供的能力.本系列计划包含如下几篇文章: 第一篇 ...

  6. SpringBoot中使用ShardingJdbc切分数据库表

    作者简介:胡宗棠,中移(苏州)软件技术有限公司,云计算软件高级研发工程师,从事公有云产品平台研发.架构设计:目前专注于大型分布式系统的高并发.高可用设计.曾就职于蚂蚁金服支付宝,甲骨文中国研发中心. ...

  7. SpringBoot中使用hikariCP

    本篇文章主要实现SpringBoot中使用hikariCP:  一 .使用工具  1. JDK1.8  2. springToolSuit(STS)  3. maven  二.创建项目  1.首先创建 ...

  8. 在springboot中使用h2数据库

    在springboot中使用h2数据库 一.h2数据库介绍 h2database为我们提供了十分轻量,十分快捷方便的内嵌式数据库 H2是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌 ...

  9. redis基本操作和在springboot中的使用

    本文介绍redis的使用 redis启动步骤 说明 redis自增自减相关操作 redis string set操作 get操作 其他操作 redis hash set操作 get操作 其他操作 re ...

  10. Linux中把文件夹打成war包,SpringBoot中maven项目打成war包部署在liunx服务器上的方法...

    说明:Spring Boot由于内嵌了如Tomcat,Jetty和Undertow这样的容器,也就是说可以直接跑起来,用不着再像Spring项目还需要外置的Tomcat等容器来进行部署工作了,通过启动 ...

最新文章

  1. OpenCV学习(12) 图像的腐蚀与膨胀(3)
  2. html清除溢出,深入理解CSS overflow:hidden——溢出,坍塌,清除浮动
  3. 浅述几年建站SEO之路的失败与反思
  4. 虚拟服务器 cms安装,轻量化云服务器怎么安装cms
  5. Windows下搭建Android开发环境
  6. pstack: Input/output error failed to read target解决
  7. 创业文档:项目启动会PPT
  8. 2019通信工程师的职业发展前景和方向
  9. CMSIS到底是个什么东西
  10. html5搜狗浏览器缓存文件夹,搜狗浏览器中怎么查找之前看过的视频文件?
  11. 浅析关键词密度你真的控制好了吗
  12. jenkins配置svn提交一键自动部署
  13. 主动防病毒产品及实测篇
  14. macOS Mojave 使用SMB局域网共享作为TimeMachine时间机器的备份盘报错Disk does not support Time Machine backups. (error 45)
  15. 7只老鼠找除100瓶水的有毒的水
  16. 转行做产品经理,如何挑选产品经理课程?
  17. KMP算法(快速找出字串)
  18. HTML5创建热点区域
  19. 华为鸿蒙系统到底能否使用,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可 !【手机吧】_百度贴吧...
  20. prometheus:原理和部署

热门文章

  1. 100行Python代码,做一个打地鼠小游戏!
  2. 百度分享在新闻列表页分享多篇文章
  3. 方向α与《孙子兵法》的基本原则
  4. .glusterfs_如何在Ubuntu 20.04上使用GlusterFS创建冗余存储池
  5. Activity透明主题导致behind Activity重绘的解决方法
  6. C++ 推箱子小游戏
  7. html a标签属性 rel=‘nofollow‘
  8. winform高仿腾讯QQ2013,几十个界面哦!!
  9. 分享到QQ好友 申请腾讯开放平台审核与认证
  10. php解析psd图层,PSD解析工具实现(七)