Spring对象管理
在Spring中,使用到IOC控制反转,把对象的创建与对象之间的调用过程交给Spring进行管理
(1)BeanFactory与ApplicationContext
(2)基于xml方式创建对象、配置属性注入
(3)属性注入:外部bean注入
(4)属性注入:内部bean注入
(5)属性注入:级联赋值
(6)注入集合属性:List、Map、Set、数组
(7)实验util工具完成list集合注入的提取
(8)普通Bean与工厂Bean
(9)Bean的作用域:单实例与多实例
(10)Bean的生命周期(前置处理器与后置处理器)
1-外部bean注入
当类中某个属性为某类,可以在xml中的property标签使用ref进行引入。
2-内部Bean注入
可以把类写入某个类中的xml内部,充当属性
3-注入集合属性:List、Map、Set、数组
// 数组 String[]注入
<property name="xxx">
<array name="StringList">
<value>java</value>
<value>python</value>
</array>
</proerty>
// list类型注入
<property name="list">
<list>
<value>Sutdent1</value>
<value>Student2</value>
</list>
</property>
// map类型注入
<property name="maps">
<map>
<entry key="Java" value="java"></entry>
<entry key="Python" value="pyton"></entry>
</map>
</property>
// set类型注入
<property name="sets">
<set>
<value>MySQL</value>
<value>Redis</value>
</set>
</property>
4-BeanFactory与ApplicationContext
ApplicationContext是BeanFactory的子接口,它的功能更加强大,区别在于,ApplicationContext在读取xml时就进行对象的创建,BeanFactory在getBean时才会创建对象。
5-配置名称空间
添加名称在配置文件中,以P标签为例
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/p
http://www.springframework.org/schema/p/spring-p.xsd"
修改beans对应的标签名称。
5-Bean对象的生命周期
(1)构造器创建Bean(无参)
(2)Bean对象属性注入
(3)调用Bean前置处理器方法 postProcessBeforeInitialization,进行初始化的前置处理
(4)初始化方法
(5)调用Bean后置处理器方法 postProcessAfterInitialization,进行初始化的前置处理
(6)使用Bean对象
(7)销毁Bean对象