相关注解

一.配置文件相关

1.@Configuration 作用于类上,告诉Spring,该类是一个配置类,相当于以前的xml配置文件

2.@ComponentScans 作用于配置类上,告诉Spring需要扫描哪些类,该注解相当于配置文件中

<context:component-scan base-package="com" use-default-filters="false"></context:component-scan>
use-default-filters="false",Spring扫描用的是默认的过滤器,此处值为false,代表不用默认过滤器。
@ComponentScans注解中可以使用过滤规则,如下图


image.png

3.@Filter注解,指定按照什么样的方式过滤,支持以下方式:

image.png

FilterType.CUSTOM:自定义过滤类型,该方式很NB,需要实现TypeFilter接口,可以按照自己定义的匹配规则进行bean扫描


image.png

metadataReader:读取到的当前正在扫描的类的信息
metadataReaderFactory:可以获取到其他任何类信息的

在配置文件类中可以定义方法,在方法上加@Bean注解,给容器中注册一个Bean;类型为返回值的类型,id默认是用方法名作为id,默认为单例,此种方式主要在引入三方JAR时,进行Bean注册。

4.@Scope注解是作用域,有四种方式

1)prototype原型
2)singleton单例
3)request同一次请求创建一个实例
4)session同一个session创建一个实例
懒加载:只对单例有效
单实例bean:默认在容器启动的时候创建对象;
容器启动不创建对象。第一次使用(获取)Bean创建对象,并初始化;

5.@Conditional按条件注册Bean,可以作用于方法和类上(类表示配置类)

比如@Conditional({WindowsCondition.class}),注解中的值表示“需要满足的条件”,该类需要实现Condition接口,满足条件的bean才能在容器中注册


image.png

6.@Import({Color.class})快速导入一个组件bean

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容