spring中scope作用域

2021-05-21 19:49:12 字數 1222 閱讀 6301

今天研究了一下scope的作用域。預設是單例模式,即scope="singleton"。另外scope還有prototype、request、session、global session作用域。scope="prototype"多例。再配置bean的作用域時,它的標頭檔案形式如下:

接著既可以配置bean的作用域了:

4、session

session作用域表示該針對每一次http請求都會產生乙個新的bean,同時該bean僅在當前http session內有效,配置例項:

配置例項:

和request配置例項的前提一樣,配置好web啟動檔案就可以如下配置:

5、global session

global session作用域類似於標準的http session作用域,不過它僅僅在基於portlet的web應用中才有意義。portlet規範定義了全域性session的概念,它被所有構成某個 portlet web應用的各種不同的portlet所共享。在global session作用域中定義的bean被限定於全域性portlet session的生命週期範圍內。如果你在web中使用global session作用域來標識bean,那麼web會自動當成session型別來使用。

配置例項:

和request配置例項的前提一樣,配置好web啟動檔案就可以如下配置:

6、自定義bean裝配作用域

在spring2.0中作用域是可以任意擴充套件的,你可以自定義作用域,甚至你也可以重新定義已有的作用域(但是你不能覆蓋singleton和 prototype),spring的作用域由介面org.springframework.beans.factory.config.scope來定 義,自定義自己的作用域只要實現該介面即可,下面給個例項:

我們建立乙個執行緒的scope,該scope在表示乙個執行緒中有效,**如下:

publicclass myscope implements scope ...

}; public object get(string name, objectfactory objectfactory) ...

return object;

} public object remove(string name) ...

publicvoid registerdestructioncallback(string name, runnable callback) ...

public string getconversationid() ...

spring的作用域 scope

spring的作用域有四種 singleton 單例 propertype 原型 request 請求 session 快取 1 singleton 單例 在springioc容器建立時建立,從ioc容器建立到銷毀整個過程中只會建立一次。2 propertype 原型 多例的 在ioc容器建立時不會...

Scope的作用域

scope描述的是sring容器如何新建bean的例項。spring的scope有以下幾種,通過 scope註解來實現 1 scope singleton 乙個spring容器中只有乙個bean的例項,為spring的預設配置,全容器共享乙個例項。這個單一例項會被儲存到單例快取中,並且所有針對該be...

jsp中作用域scope概念

幾乎所有的web開發語言都支援session功能,servlet也不例外。servlet jsp中的session功能是通過作用域 scope 這個概念來實現的。作用域分為四種,分別為 page 在當前頁面有效 僅用於jsp中 request 在當前請求中有效 session 在當前會話中有效 在所...