spring bean 是什么?它的作用域是哪些?它的生命周期是什么?

Spring Bean是事物处理组件类和实体类(POJO)对象的总称,Spring Bean被Spring IOC容器初始化,装配和管理。

或者简单的理解就是对象。

作用域:

singlton:单例模式,对象在容器中全局唯一,在IOC容器初始化的时候该对象就会被创建

prototype:多例模式,在每一次调用getBean的时候IOC容器才会创建该对象的实体,并且每次创建都是不同的对象

request:在HTTP请求bean范围内会会对每一个来自客户端的网络请求创建一个实例,在请求完成后,bean会失效并被垃圾回收器回收

session:HTTP session请求范围,确保每个session中有一个bean的实例,同一个session共享同一个bean,不同session,bean也不同。在session过期后、bean会自动失效。仅用于 WebApplicationContext 环境

global-session:除在portlet不一样外,其余情况下与session作用域一样。在portlet中,全局共享一个bean。

生命周期:

实例化-属性赋值-初始化-销毁

大致分为4个,只不过其中穿插了其它,导致不清楚。详细请看 请别再问Spring Bean的生命周期了!

 
原文地址:https://www.cnblogs.com/ivy-xu/p/12401162.html