Spring Boot 版本:3.5.8
Bean 的作用域
Bean 的作用域决定了它在哪些上下文中可用。Spring 提供了多种作用域,其中单例和原型最为常见,Web 环境下还有请求、会话和应用作用域。
/**
* 实体类
*/
public class Dog {}
/**
* 配置类
*/
@Configuration
public class DogConfig {
// 单例:默认作用域,容器内仅存在一个实例
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_SINGLETON)
public Dog singleDog() {
return new Dog();
}
// 原型:每次请求 Bean 时都会创建新实例
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public Dog prototypeDog() {
return new Dog();
}
// Web 相关作用域
@Bean
@RequestScope
public Dog requestDog() {
return new Dog();
}
@Bean
@SessionScope
public Dog sessionDog() {
return new Dog();
}
@Bean
@ApplicationScope
Dog {
();
}
}


