SpringIOC之FilterType

博主介绍:✌全网粉丝5W+,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验✌

博主作品:《Java项目案例》主要基于SpringBoot+MyBatis/MyBatis-plus+MySQL+Vue等前后端分离项目,可以在左边的分类专栏找到更多项目。《Uniapp项目案例》有几个有uniapp教程,企业实战开发。《微服务实战》专栏是本人的实战经验总结,《Spring家族及微服务系列》专注Spring、SpringMVC、SpringBoot、SpringCloud系列、Nacos等源码解读、热门面试题、架构设计等。除此之外还有不少文章等你来细细品味,更多惊喜等着你哦

🍅uniapp微信小程序🍅面试题软考题免费使用,还可以使用ChatGPT,微信支付,扫码加群

点击这里预览

🍅开源项目免费哦(有vue2与vue3版本):  击这里克隆或者下载       🍅

🍅文末获取联系🍅精彩专栏推荐订阅👇🏻👇🏻 不然下次找不到哟

Java项目案例《100套》

https://blog.csdn.net/qq_57756904/category_12173599.html
uniapp小程序《100套》

https://blog.csdn.net/qq_57756904/category_12199600.html

有需求代码永远写不完,而方法才是破解之道,抖音有实战视频课程,某马某千等培训都是2万左右,甚至广东有本科院校单单一年就得3万4年就12万学费,而且还没有包括吃饭的钱。所以很划算了。另外博客左侧有源码阅读专栏,对于求职有很大帮助,当然对于工作也是有指导意义等。在大城市求职,你面试来回一趟多多少少都在12块左右,而且一般不会一次性就通过,还得面试几家。而如果你对源码以及微服务等有深度认识,这无疑给你的面试添砖加瓦更上一层楼。

最后再送一句:最好是学会了,而不是学废了!!!

Spring 框架中的 FilterType 是一个枚举类型,用于在使用 @ComponentScan 注解时指定要包含或排除的组件类型。@ComponentScan 注解用于告诉 Spring 在哪里搜索组件类,以便将它们注册到容器中。

FilterType 枚举包括以下常量:

  1. ANNOTATION:这是默认的过滤类型。它表示按照指定的注解类型来筛选组件类。你可以使用 value 属性来指定要使用的注解类型,然后 @ComponentScan 注解会扫描并注册带有该注解的类。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, value = MyAnnotation.class))
  1. ASSIGNABLE_TYPE:这个过滤类型表示按照指定的类(或接口)来筛选组件类。只有那些与指定类型相同或是其子类的组件类会被包括。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = MyService.class))
  1. ASPECTJ:这个过滤类型表示按照 AspectJ 表达式来筛选组件类。AspectJ 表达式允许更复杂的匹配规则,可以根据类名、方法签名、注解等来筛选组件。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.ASPECTJ, pattern = "com.example.*.service.*"))
  1. CUSTOM:这个过滤类型表示使用自定义的 TypeFilter 实现类来筛选组件。你需要实现 TypeFilter 接口并在 value 属性中指定自定义过滤器的类。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.CUSTOM, value = MyCustomFilter.class))
  1. REGEX:这个过滤类型表示使用正则表达式来筛选组件类。只有与正则表达式匹配的组件类会被包括。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.REGEX, pattern = ".*Repository"))
  1. ANNOTATION自定义注解:除了上述常见的过滤类型,你还可以使用自定义注解类型,将其与 ANNOTATION 结合使用,以便使用自定义注解来筛选组件类。
@ComponentScan(basePackages = "com.example", includeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, value = MyCustomAnnotation.class))

这些过滤类型允许你更精细地控制哪些组件类会被包含或排除在 @ComponentScan 注解的扫描中。它们提供了多种筛选组件的方式,可以根据不同的条件和需求进行配置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/246377.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

实现进程间的通信

本例程是开发一款能实现进程通信的DLL。本例程以Visual Studio 2015为例。在Visual Studio 2013,Visual Studio 2017都是可以。 第一步:在Visual Studio 2015中,创建DLL工程。如何创建DL,在这里就不作具体说明了。百度都有许多创建…

【Python】—— 文本分析

文本分析 相关知识1. 文本数据处理2. 文本可视化3. Python编程4. 词频统计5. 人名提取6. 自然段划分7. 人物出现频率分布分析8. 词云生成 实验内容数据下载地址:1.对纯英文小说进行分析。2.对中文小说进行分析。 问题与解决附录1.对纯英文小说进行分析。2.对中文小说…

正则化实战( Lasso 套索回归,Ridge 岭回归)

Lasso 套索回归 导入包 import numpy as np from sklearn.linear_model import Lasso from sklearn.linear_model import SGDRegressor, LinearRegression原方程的计算结果 # 1. 创建数据集X,y X 2 * np.random.rand(100, 20) w np.random.rand(20, 1) b np.r…

PyGame字体详解

文章目录 字体初始化获取字体字体对象内置方法 字体初始化 在pygame程序中,第一步势必进行初始化,即调用pygame.init()函数,而此初始化过程,则顺便包含了字体初始化,即默不作声地调用了pygame.font.init()函数。下面通…

FreeModbus--学习函数指针

目录 函数指针 最简单的例子 稍作修改例子 引入协议栈的函数指针 引入协议栈第二处函数指针 函数指针 该协议栈中使用到函数指针,现开展一篇专门存放函数指针的文章。 C语言的函数指针是指向函数的指针变量,可以用来存储和调用函数的地址。在C语言中…

【亲测】获取百度智能云access_token并存储,百度智能云access_token有效期

百度智能云服务内置很多api接口(文字识别,企业信息识别,等),所有百度智能云自带的接口都会用到百度的access_token 第一步:登录百度智能云管理中心 第二步:创建账户,完整身份认证 …

智能优化算法应用:基于乌燕鸥算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于乌燕鸥算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于乌燕鸥算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.乌燕鸥算法4.实验参数设定5.算法结果6.参考文…

jmeter判断’响应断言‘两个变量对象是否相等

1、首先需要设置变量,json、正则、csv文件等变量 2、然后在响应断言中 ①JMeter Variable Name to use —— 输入一个变量,变量名即可 ② 模式匹配规则 ——相等 ③测试模式 ——输入引用的变量命${变量名} (注意这里是需要添加一个测试模式…

安卓开发显示加载中

private ProgressDialog loadobj; // 显示 ProgressDialog loadobj loadobj.show(MainActivity.this, "正在加载", "请稍后..."); // 取消 ProgressDialog loadobj.dismiss();或者 public ProgressDialog progressDialog;public void loading(){// …

流场寻路(Flow Field Path Finding)

简介 当场景中有成千上万个寻路游戏单位需要到达同一目标点时,通过常用的A*算法进行寻路不再是合适的选择,因为每个寻路游戏单位都需要依据自身所在的位置,根据算法获得一条从自身位置寻路到目标点的路径,n个游戏单位进行寻路就需…

人工智能在大型复杂机械产品装配状态检测自动化中的应用

尊敬的读者们,本文主要围绕“大型复杂机械产品装配状态检测自动化方案”开展讨论,从这个领域存在的问题和难度,以及基于人工智能、数字图像处理、机器人控制、装配机理等技术的自动化设计与实践方案。文章提出了数字化建模和智能识别模型构建…

[Springboot 源码系列] 浅析自动配置原理

文章目录 自动配置类原理AopAutoConfigurartion条件装配的底层原理ConditionalConditionalOnXxx 自动配置类原理 public class AutoConfApplication {public static void main(String[] args) {GenericApplicationContext context new GenericApplicationContext();context.re…

Git命令之本地分支与远程分支支关联/解除关联

目录 1.应用场景2.关联远程仓库中存在的分支3.解除本地分支与远程分支的关联 1.应用场景 在实际的工作生活中,往往需要将本地的分支和远程分支关联,这样我们就可以使用git pull命令来更新拉取最新的代码,并使用git push命令将自己本地的修改…

设备远程监控系统:实时对工厂设备状态进行监控

随着工业4.0时代的到来,工业物联网平台在工业领域的应用越来越广泛。设备远程监控系统作为工业物联网的重要组成部分,能够实时对工厂设备状态进行监控,提高生产效率和管理水平。本文将详细介绍工厂设备数据的采集方式以及设备远程监控系统的应…

企业寄件运费贵?企业如何将企业快递费用降至最低?

按照上述情况,如果使用闪侠惠递商家寄件服务,相较于原本的费用,会节省很大一部分的成本费用的,显而易见,这是非常便宜的。 闪侠惠递的寄件服务支持圆通、德邦、京东、顺丰等多家主流快递公司,并可以对比多…

Git-瑞吉外卖

什么是GIt? 分布式版本控制工具,用来管理源代码文件。分布式主要体现在两种仓库(本地仓库、远程仓库)。 git的作用? 代码回溯、版本切换(切换不同框架)、多人协作、远程备份 基本命令&…

虚拟化逻辑架构:KVM虚拟机通过OVS端口组实现网络连接

目录 一、实验 1.CentOS 7 安装 OpenVSwitch(构建RPM安装包) 2.KVM虚拟机通过OVS端口组实现网络连接 二、问题 1.安装openvswitch-2.5.10报错 2.virt-install未找到命令 3.如何删除自定义网络 4.开机如何自动启动自定义网络 一、实验 1.CentOS 7 安装 Open…

双指针算法(一)

目录 移动零 复写零 快乐数 盛水最多的容器 双指针与单调性结合 有效三角形的个数 查找总价格为目标值的两个商品 两数之和 Ⅱ - 输入有序数组 双指针算法是通过定义两个指针不断单向移动来解决问题的一种算法。但双指针算法,是一个抽象的思想概念&#xf…

【C语言】超详解strncpystrncatstrncmpstrerrorperror的使⽤和模拟实现

🌈write in front :🔍个人主页 : 啊森要自信的主页 ✏️真正相信奇迹的家伙,本身和奇迹一样了不起啊! 欢迎大家关注🔍点赞👍收藏⭐️留言📝>希望看完我的文章对你有小小的帮助&am…

智能优化算法应用:基于原子搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于原子搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于原子搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.原子搜索算法4.实验参数设定5.算法结果6.…