Springboot中的@ComponentScan注解使用解析

 更新时间:2024年01月05日 11:07:31   作者:沐雨金鳞  
这篇文章主要介绍了Springboot中的@ComponentScan注解使用解析,@ComponentScan用于类或接口上主要是指定扫描路径,spring会把指定路径下带有指定注解的类注册到IOC容器中,需要的朋友可以参考下

@ComponentScan注解

一、@ComponentScan注解作用

扫描指定注解的类注册到IOC容器中

  • @ComponentScan用于类或接口上主要是指定扫描路径,spring会把指定路径下带有指定注解的类注册到IOC容器中。
  • 会被自动装配的注解包括@Controller、@Service、@Component、@Repository等等。
  • 其作用等同于<context:component-scan base-package="com.maple.learn" />配置。

二、@ComponentScan使用

常用属性如下:

  • basePackages、value:指定扫描路径,如果为空则以@ComponentScan注解的类所在的包为基本的扫描路径
  • basePackageClasses:指定具体扫描的类
  • includeFilters:指定满足Filter条件的类
  • excludeFilters:指定排除Filter条件的类
  • includeFilters和excludeFilters 的FilterType可选:ANNOTATION=注解类型默认、ASSIGNABLE_TYPE(指定固定类)、ASPECTJ(ASPECTJ类型)、REGEX(正则表达式)、CUSTOM(自定义类型),自定义的Filter需要实现TypeFilter接口

三、@ComponentScan的常见的配置

@ComponentScan(value="com.maple.learn",
   excludeFilters = {@ComponentScan.Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class)},
   includeFilters = {@ComponentScan.Filter(type=FilterType.ANNOTATION,classes={Controller.class})}
        )
public class SampleClass{
   ……

到此这篇关于Springboot中的@ComponentScan注解使用解析的文章就介绍到这了,更多相关@ComponentScan注解使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring常用注解及自定义Filter的实现

    Spring常用注解及自定义Filter的实现

    这篇文章主要介绍了Spring常用注解及自定义Filter的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • 在idea中将java项目中的单个类打包成jar包操作

    在idea中将java项目中的单个类打包成jar包操作

    这篇文章主要介绍了在idea中将java项目中的单个类打包成jar包操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • Java全面分析面向对象之多态

    Java全面分析面向对象之多态

    多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量到底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定
    2022-04-04
  • 一文详解Spring 中的顺序问题

    一文详解Spring 中的顺序问题

    本文主要介绍了Spring 中的顺序问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • 浅谈SpringBoot优化技巧

    浅谈SpringBoot优化技巧

    这篇文章主要介绍了浅谈SpringBoot优化技巧,需要的朋友可以参考下。
    2017-09-09
  • 解决swagger主页访问,返回报错500问题

    解决swagger主页访问,返回报错500问题

    在使用Swagger时遇到500错误,通过仔细的debug发现问题源于注解使用不当,具体表现为一个接口的入参被错误地注解了三个参数,而实际上只有两个,这导致了Swagger在解析时抛出了NullPointerException异常,解决方法是删除错误的第三个参数的注解
    2024-09-09
  • Java生成PDF文档两个超实用的库( iText和Apache PDFBox)

    Java生成PDF文档两个超实用的库( iText和Apache PDFBox)

    这篇文章主要介绍了Java生成PDF文档两个超实用的库,分别是用 iText库以及用Apache PDFBox库生成PDF,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02
  • 在SpringBoot中该如何配置拦截器

    在SpringBoot中该如何配置拦截器

    今天给大家带来的是关于SpringBoot的相关知识,文章围绕在SpringBoot中该如何配置拦截器展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • 你都理解创建线程池的参数吗?

    你都理解创建线程池的参数吗?

    这篇文章主要介绍了创建线程池参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 解决Maven的pom.xml中设置repository不起作用问题

    解决Maven的pom.xml中设置repository不起作用问题

    这篇文章主要介绍了解决Maven的pom.xml中设置repository不起作用问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03

最新评论