栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot源码分析之注解解析原理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot源码分析之注解解析原理

一、Springboot解析类注解原理图二、先说明一个重要问题在Springboot中注解重复是怎么解决,如果在启动类加了@SpringBootApplication和@ComponentScan,那么是使用@SpringBootApplication里面的@ComponentScan,还是启动类上的@ComponentScan,还是合并两个注解的属性后再使用呢?答案是,启动类上的@ComponentScan。SpringBoot在解析注解时,会形成一个层级关系,越在外层的优先级越高。

三、@ComponentScan的作用及使用
1.作用主要是用来扫描包。通过这个注解来搜索需要加载到容器中的Bean。
2.使用
(1)配置包路径,如是没有显示配置,那默认是启动类所在的包包路径。
(2)配置过滤器,主要是配置exclude过滤器(哪些类不要加载)和include类型过滤器(包括声明是否使用默认 的)。
(3)@ComponentScan上默认配置的exclude过滤器主要是过滤掉被当前@ComponentScan注解的类,因为已经被解析了;其次是过滤自动配置的类即在spring.factories中配置了EnableAutoConfiguration的类,且该类被@Configuration注解。
(4)include类型过滤器,主要是扫描被@Component注解的类。
默认添加的include类型过滤器

(5)递归处理(非常重要)
扫描到的类如果被@Configuration注解了,那么这个类会被递归处理,如果其被@ComponentScan注解,那么又会在该类所在的包进行扫描。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/755029.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号