实例化bean对象
为外部定义的bean起别名
基于set方法的依赖注入
使用构造函数进行依赖注入
使用内部注入的方式注入bean对象
使用list集合依赖注入和使用map集合依赖注入
测试类
使用depends-on控制bean的加载顺序
使用懒加载lazy-init 默认为false
使用单例或者多例(原型),使用scope属性来说明是单例还是多例,默认是单例
注意:单例是指相同的对象有多个运行后,只加载一次。
多例是相同的对象有多个运行后,加载多次。
使用静态工厂方法实例化对象
使用实例化工厂方法实例化对象
使用自动注入
注意:
1.根据方法名字自动注入 autowire=“byName” 根据set方法的名字进行自动注入,例如setWife() id=“wife”,setxxx() id=“xxx”
2.根据类型自动注入 autowire=“byType” 根据类型进行自动注入
当出现多个相同bean类型的时候,没办法自动注入,会报错
3. constructor 根据构造器去匹配
优先会根据参数名字去匹配,假如参数名字没有匹配到,会根据参数类型去匹配
会根据构造函数的参数进行完整的匹配注入: 如果构造函数的参数Person(Wife wife3,User user)
ioc容器里面必须要有同时有wife和user
名字没有匹配到会根据类型匹配 类型假如出现多个会注入失败但是不会报错
使用第三方bean和引用外部属性资源文件
生命周期回调两种方式,一种是实现接口
配置xml中的bean对象
init-method和destroy-method的属性值是需要我们在ioc容器中自定义方法然后调用的
使用SPEL表达式