前面在讲到bean的生命周期时,提到了beandefinition,这个东西是用来创建bean对象的,beandefinition有很多重要属性:1.beanClass 2.scope 3.isLazy 4.dependsOn 5.primary 6.initMethodName
beanclass | 表示一个bean的类型 |
---|---|
scope | bean的作用域,singleton,单例,prototype,原型bean |
isLazy | 原型bean的izLazy不起作用,非懒加载的单例bean会在spring启动过程中直接生成好 |
dependsOn | 在一个bean创建之前,把它依赖的bean都得创建好 |
primary | 如果找到了多个同type的bean,会查看有没有主bean,如果存在,则直接注入 |
initMethodName | 初始化时对bean进行加工 |
beanfactory将利用beandefinition来生成bean对象,beanfactory下面有很多实现类。