1.1 Bean标签基本配置
用于配置对象交由Spring来创建。
bean.png
基本属性:
- id : Bean实例在spring容器中的唯一标识
- class : Bean的全限定名称
1.2 Bean标签范围配置
scope: 指对象的作用范围,取值如下:范围.png
进行多例的测试,是多例的话地址会发生改变
测试1.png
测试2.png
1)当scope的取值为singleton时
Bean的实例化个数: 1个
Bean的实例化时机: 当Spring核心配置文件被加载时,实例化配置的Bean实例
Bean的生命周期:
- 对象创建:当应用加载,创建容器时,对象就被创建了
- 对象运行:只要容器在,对象一直活着
- 对象销毁:当应用卸载,销毁容器时,对象就被销毁了
2)当scope的取值为prototype时
Bean的实例化个数:多个
Bean的实例化时机:当调用getBean()方法时实例化Bean
- 创建对象:当使用对象时,创建新的对象实例
- 对象运行:只要对象在使用中,就一直活着
- 对象销毁:当对象长时间不用时,被Java的垃圾回收器回收了
1.3 Bean生命周期配置
- init-method: 指定类中的初始化方法名称
-
destroy-method: 指定类中销毁方法名称
可以像下面方式调用方法配置1.png
方法配置2.png
1.4 Bean实例化三种方式
- 无参构造方法实例化
- 工厂静态方法实例化
- 工厂实例方法实例化
用工厂静态方法:
静态工厂实例化1.png
静态工厂实例化2.png
用工厂实例方法:
工厂实例1.png
工厂实例2.png
1.5 Bean的依赖注入
依赖注入:它是Spring框架核心IOC的具体实现
在编写程序时,通过控制反转,把对象的创建交给了Spring,但是代码中不可能出现没有依赖的情况。IOC解耦只是降低他们的依赖关系,但不会消除。例如:业务层仍会调用持久层的方法。
注入方式:
-
构造方法
构造注入1.png
构造注入2.png
运行.png -
set方法
set注入1.png
set注入2.png
运行.png
P命名空间注入本质也是set方法注入,但是比起上面的set方法注入更加方便,主要体现在配置文件中,如下,首先需引入P命名空间:
命名空间.png
其次需要修改注入方式
注入.png
上面几种注入都是通过ref的对象注入,也可以使用value元素注入。
还可以多个元素注入如:
List集合元素.png
Map集合元素.png
properties集合.png
1.6 引入其他配置文件(分模块开发)
实际开发中,Spring的配置内容非常多,这就导致Spring配置很复杂且体积很大,所有,可以将部分配置拆解到其他配置文件中,而且Spring主配置文件通过import标签进行加载加载.png