@Import注解

import注解的作用

@Import注解作用是导入一个或多个Spring bean,具体包括以下几种用法:

1导入普通类:将普通类变为Spring bean。这意味着,通过@Import注解,可以将不在Spring Boot的包扫描路径下的文件加载到容器里面,前提是这些类有一个无参的构造器。

2导入@Configuration类:@Configuration注解的类成为Spring bean,该类中的@Bean注解的方法也变为Spring bean。在应用启动类上使用@ComponentScan也能让@Configuration生效。

3导入ImportSelector的实现类:ImportSelector接口中定义了方法selectImports,它返回字符串数组,里面是类的全路径。使用@Import导入ImportSelector的实现类,就是将selectImports方法返回的类注册为Spring bean。

4导入ImportBeanDefinitionRegistrar的实现类:ImportBeanDefinitionRegistrar接口中定义了方法registerBeanDefinitions,它的功能就是通过BeanDefinitionRegistry实例注册Spring bean。

@Import注解可以声明在类级别上,或者作为一个元注解使用。此外,如果需要引入XML或其他类型的文件,可以使用@ImportResource注解代替@Import注解。@Import注解的属性值放的是Class的数组,这里也可以把不在Spring Boot的包扫描路径下的文件加载到容器里面。

相关推荐
流年似水~15 小时前
2026 年跨平台开发全貌:Flutter、KMP、React Native 怎么选?
人工智能·程序人生·语言模型·ai编程
流年似水~19 小时前
iOS 开发进阶之路:从能跑到能维护
人工智能·程序人生·ios·语言模型
好运的阿财21 小时前
OpenClaw工具拆解之 image+pdf
人工智能·python·程序人生·pdf·ai编程·openclaw·openclaw工具
黄昏回响2 天前
信息系统基础知识(一):企业信息化与信息系统架构(下篇)
计算机网络·程序人生·系统架构·改行学it
愚者游世2 天前
variadic templates(可变参数模板)各版本异同
开发语言·c++·程序人生·面试
Brilliantwxx4 天前
【小项目】实现日期计算器(思路讲解+代码实现)
开发语言·c++·程序人生
程序员老邢4 天前
【技术底稿 19】Redis7 集群密码配置 + 权限锁死 + 磁盘占满连锁故障真实排查全记录
java·服务器·经验分享·redis·程序人生·微服务
黄昏回响5 天前
UML与SysML深度解析:从软件工程到系统工程的建模语言进化之路
程序人生·软件工程·uml·改行学it
Codigger官方6 天前
生态破局:从孤岛工具到协同奇点
开发语言·人工智能·程序人生
JosieBook7 天前
【程序人生】程序员如何实现财富自由?
程序人生·职场和发展