一、Bean作用域的定义
Bean 的作⽤域是指 Bean 在 Spring 整个框架中的某种行为模式,比如 singleton 单例作用域,就表示 Bean 在整个 Spring 中只有⼀份,它是全局共享的,那么当其他⼈修改了这个值后,那么另⼀个⼈读取到的就是被修改的值。
二、Bean的六种作用域
1.singleton:单例作用域(默认的作用域)
2. prototype:原型作用域(多例作用域)
3. request:请求作用域
4. session:会话作用域
5. application:全局作用域
6. websocket:HTTP WebSocket 作用域
2.1作用域的设置
三、Spring执行流程
启动 Spring 容器 ->
实例化 Bean(分配内存空间,从无到有)->
Bean 注册到 Spring 中(存操作) ->
将 Bean 装配到需要的类中(取操作)
四、Bean生命周期
1.实例化 Bean(不等于初始化):为 Bean 分配内存空间
2.设置属性(Bean 注入和装配)
3.Bean 初始化
a. 实现了各种 Aware 通知的方法,如 BeanNameAware、BeanFactoryAware、ApplicationContextAware 的接口方法;
b.执行 BeanPostProcessor 初始化前置方法;
c.执行 @PostConstruct 初始化方法,依赖注入操作之后被执行;
d.执行自己指定的 init-method 方法(如果有指定的话);
e.执行 BeanPostProcessor 初始化后置方法。
4.使用 Bean
5.销毁 Bean