spring bean的作用域

2021-08-10 17:54:03 字數 988 閱讀 9317

一般情況下呢,我們在spring環境下配置乙個bean,這個bean是單例的。

就是說ioc容器只會這個bean節點建立乙個bean物件,我們每次呼叫getbean方法都會返回同乙個bean

建立乙個car類 無參建構函式列印一句話「我出生了」

public car()

配置檔案**

>

main 函式測試

car car1 = (car) ac.getbean("car");

car car2 = (car) ac.getbean("car");

system.out.println(car1 == car2);//true

說明car1 和 car2是同乙個物件,bean的作用域預設是單例的

配置檔案中bean節點scope可以配置這個作用域,預設的是singleton。也就是單例的

我們可以配置作用域為原型的 prototype

然後在看結果

car car1 = (car) ac.getbean("car");// 控制台列印 「我出生了」

car car2 = (car) ac.getbean("car");// 控制台列印 「我出生了」

system.out.println(car1 == car2);//false

配置了prototype後,每次都會創造出不同的物件

使用bean 的 scope 屬性來配置 bean 的作用域

singleton : 預設值 , 容器初始時建立 bean 例項, 在整個容器的生命週期內只建立這乙個bean,單例的。

prototype: 原型的,容器初始化時不建立bean的例項,而在每次請求時都建立乙個新的bean的例項,並返回.

request:預物件的request

session:預物件的session

Spring Bean的作用域

bean的作用域,常用的有兩種,單例singleton 多例prototype 預設情況下,bean都是單例的singleton。在容器初始化的時候就被建立,就這麼乙份。1 單例模式 例如 測試 package com.lynn.spring.test import static org.junit...

Spring bean的作用域

spring框架中,bean 的作用域有如下五種 1.單例 每個spring的ioc容器返回來乙個bean例項 框架預設 2.原型 當每次請求時候都返回來乙個bean例項 3.請求 每個http請求返回來乙個bean例項 4.會話 每個http會話返回來乙個bean例項 5.全域性會話 返回全域性會...

Spring Bean的作用域

在xml檔案中配置bean時,我們可以通過scope為bean配置指定的作用域。bean的作用域分為五種 說明 singleton 單例模式,乙個bean容器中只存在乙個bean例項 prototype 原型模式,每次請求都會產生乙個新的bean例項 request 每次http請求會產生乙個新的b...