1、Car.java
javapackage com.atguigu.ioc; import lombok.Data; @Data public class Car { private String cname; }2、 MySpringConfiguration2.java
javapackage com.atguigu.ioc; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; @Configuration @Import(MySpringConfiguration3.class) public class MySpringConfiguration2 { @Bean public Car getCar2() { Car car = new Car(); car.setCname("问界"); return car; } }3、 MySpringConfiguration3.java
javapackage com.atguigu.ioc; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class MySpringConfiguration3 { @Bean public Car getCar3() { Car car = new Car(); car.setCname("仰望"); return car; } }4、CarTest.java
javapackage com.atguigu.ioc; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class CarTest { private BeanFactory beanFactory; @BeforeEach public void setup() { beanFactory = new AnnotationConfigApplicationContext(MySpringConfiguration2.class); } @Test public void test() { System.out.println(beanFactory); } }
在Spring中,@Import注解的作用是让我们能够将一个或多个Java配置类导入另一个配置类中,以便共享配置信息和Bean定义。它可以用来导入其他配置类、普通的Java类、甚至是XML配置文件。@Import注解有以下三种使用方式:
1.导入配置类
我们可以将一个或多个配置类导入到另一个配置类中,以便在当前配置类中使用导入的配置类中的Bean。
示例:
java@Configuration @Import({DatabaseConfig.class, MessagingConfig.class}) public class AppConfig { ... }2.导入普通类
我们可以将普通的Java类导入到Spring容器中,让其成为一个Bean。
示例:
java@Configuration @Import(MyUtilClass.class) public class AppConfig { ... }3.导入XML配置文件
我们可以将一个或多个XML配置文件导入到Java配置类中,以便在配置类中使用XML中定义的Bean。
示例:
java@Configuration @ImportResource({"classpath:applicationContext.xml"}) public class AppConfig { ... }使用@Import注解可以很方便地将多个配置类或Java类组合在一起,使得Spring应用程序具有更高的灵活性和可重用性。
Spring-IOC-@Import的用法
丁总学Java2023-11-21 21:00
相关推荐
Larcher22 分钟前
React Router 不只是页面跳转:从 SPA 路由到权限守卫的完整实践Larcher29 分钟前
大模型为什么每次回答都不一样?一文搞懂 Temperature、Top K 与 Top PLucianaiB3 小时前
毕业老学长给我留的最后一句话是:“AI 写的,别挂我名。” 我直接 神(Seed Evolving) 来!助我!IvanCodes3 小时前
RAG 实战教程(一):RAG 工作原理与完整流程——分片、索引、召回、重排和生成·薯条大王3 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程CodeSheep4 小时前
稚晖君公司人事大变动,来了!小满zs4 小时前
Go语言第八章(函数)stark张宇5 小时前
实战Go高级特性:Context超时控制、defer资源回收与Channel通信的关键避坑点ZJH__GO6 小时前
网络编程v4pro--实现聊天室文件传输功能程序员黑豆6 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”