“什么是 BeanDefinition”的版本间的差异
		
		
		
		
		
		跳到导航
		跳到搜索
		
				
		
		
	
Jihongchang(讨论 | 贡献)  (→scope)  | 
				Jihongchang(讨论 | 贡献)   (→isLazy)  | 
				||
| 第26行: | 第26行: | ||
非懒加载的单例 bean 则会在 Spring 启动过程中直接生成好。  | 非懒加载的单例 bean 则会在 Spring 启动过程中直接生成好。  | ||
| − | dependsOn  | + | ==== dependsOn ====  | 
| − | + | 表示一个 bean 在创建之前所依赖的其他 bean,在一个 bean 创建之前,它所依赖的这些 bean 得先全部创建好。  | |
| − | |||
| + | ==== primary ====  | ||
initMethodName  | initMethodName  | ||
2024年7月21日 (日) 01:45的版本
BeanDefinition 表示 Bean 定义,
Spring 根据 BeanDefinition 来创建 Bean 对象,
BeanDefinition 有很多的属性用来描述 Bean 对象。
BeanDefinition 是 Spring 中非常核心的概念。
BeanDefinition 中重要的属性
beanClass
表示一个 bean 的类型,比如:UserService.class、OrderService.class,Spring 在创建 Bean 的过程中会根据此属性来实例化得到对象。
scope
表示一个 bean 的作用域,比如:
scope 等于 singleton,该 bean 就是一个单例 bean;
scope 等于 prototype,该 bean 就是一个原型 bean。
isLazy
表示一个 bean 是不是需要懒加载,原型 bean 的 isLazy 属性不起作用,
懒加载的单例 bean,会在第一次 getBean 的时候生成该 bean,
非懒加载的单例 bean 则会在 Spring 启动过程中直接生成好。
dependsOn
表示一个 bean 在创建之前所依赖的其他 bean,在一个 bean 创建之前,它所依赖的这些 bean 得先全部创建好。
primary
initMethodName