【Java_Spring】Day29 Spring 注解方式配置并加载类的Bean对象

Spring中使用AnnotationConfigApplicationContext来加载Spring配置并获取一个类的bean对象

在Spring中,AnnotationConfigApplicationContext 是一种基于注解的配置上下文,它允许通过注解而非XML文件来配置Spring应用程序。通过它,可以加载带有注解的配置类并从Spring容器中获取Bean对象。以下是使用AnnotationConfigApplicationContext加载配置并获取Bean对象的过程:

使用步骤

  1. 创建AnnotationConfigApplicationContext实例:该类用于初始化Spring容器。你可以通过传递包名(用于类扫描)或者直接传递配置类(带有@Configuration的类)来创建。

  2. 配置类扫描或手动注册配置:Spring会扫描指定包中使用特定注解(如@Component@Service@Repository)的类,或使用显式的配置类(使用@Configuration注解)来注册Bean。

  3. 获取Bean对象:使用getBean()方法从容器中获取所需的Bean实例。

代码示例

1. 包扫描方式
// 1. 创建上下文,并扫描 "spring_automatic_assembly" 包
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext("spring_automatic_assembly");

// 2. 从Spring容器中获取Person类的Bean对象
Person person = context.getBean(Person.class);

// 3. 使用Bean对象
System.out.println(person);

// 4. 关闭上下文,释放资源
context.close();

在这种方式下,Spring会扫描"spring_automatic_assembly"包中的所有类,自动注册那些带有@Component@Service@Repository等注解的类为Spring Bean。

2. 显式配置类方式
// 1. 定义配置类
@Configuration
@ComponentScan("spring_automatic_assembly") // 告诉Spring扫描这个包
public class AppConfig {
}

// 2. 创建上下文并注册配置类
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);

// 3. 获取Bean
Person person = context.getBean(Person.class);
System.out.println(person);

// 4. 关闭上下文
context.close();

主要注解

  • @Configuration:用于标记类为Spring的配置类,替代XML配置文件。
  • @ComponentScan:指定Spring扫描的包路径,自动发现并注册Bean。
  • @Component@Service@Repository@Controller:用于标识类为Spring管理的组件。

总结

通过AnnotationConfigApplicationContext,Spring能够基于注解自动管理Bean的创建、配置和注入,支持灵活的Java配置方式,简化了应用程序的配置和管理流程。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值