You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
# 一、@Scope
用途: 配置Bean的作用域, 等效于bean xml中的bean元素scope属性
![[Snipaste_2023-02-16_11-43-59.png]]
常见用法:
1. 和@Compontent一起使用在类上
2. 和@Bean一起标注在方法上
## 用法
### 1.和@Compontent一起使用在类上
![[Snipaste_2023-02-16_11-46-22.png]]
### 2.和@Bean一起标注在方法上
![[Snipaste_2023-02-16_11-46-50.png]]
# 二、@ImportResource
用途: spring为了方便在注解方式中兼容老的xml的方式, 提供了@ImportResource注解来引入bean定义的配置文件
![[Snipaste_2023-02-16_14-06-14.png]]
![[Snipaste_2023-02-16_14-07-11.png]]
# 三、@Lazy
用途: 等效于bean xml中的bean元素的lazy-init属性, 实现bean的延迟初始化( 延迟初始化就是使用到的适合才会进行初始化)
![[Snipaste_2023-02-16_14-09-36.png]]
## 用法
### 1.和@Compontent一起使用
![[Snipaste_2023-02-16_14-10-27.png]]
### 2.和@Configuration一起使用加在配置类上
@Lazy 和@Configuration一起使用, 此时配置类中所有通过@Bean方式注册的bean都会被延迟初始化, 不过也可以在@Bean标注的方法上使用@Lazy来覆盖配置类上的@Lazy配置。
![[Snipaste_2023-02-16_14-12-46.png]]