Spring中註解 Scope詳解

2021-08-29 05:09:09 字數 865 閱讀 1270

scope是spring中的乙個註解,可以作為類註解,也可以作為方法註解,它有五個作用域,分別是singleton、prototype、request、session、global session,spring中的bean預設是使用singleton,即單例模式;下面就五種作用域做詳細介紹;

1、@scope(「singleton」)

spring中的bean預設使用方式,即單例模式,全域性有且僅有乙個例項;

2、@scope(「prototype」)

每次獲取bean時都會產生乙個新的例項,注意是「獲取」,而不是「使用」;

舉個例子,在a類中注入b類的例項,在a類中多個地方使用例項b都是使用的同乙個;

如果在c類中注入b的例項,那麼在a類中和c類中使用的就是兩個不同的b的例項;

3、@scope(「request」)

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

request、session、global session使用的時候首先要在初始化web的web.xml中做如下配置:

如果你使用的是servlet 2.4及以上的web容器,那麼你僅需要在web應用的xml宣告檔案web.xml中增加下述contextlistener即可:

org.springframework.web.context.request.requestcontextlistener

...4、@scope(「session」)

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

5、@scope(「global session」)

參考資料:

spring註解之 Scope註解

1,scope註解是什麼 scope註解是springioc容器中的乙個作用域,在 spring ioc 容器中具有以下幾種作用域 基本作用域singleton 單例 prototype 多例 web 作用域 reqeust session globalsession 自定義作用域 a.single...

Spring中的 scope註解

預設是單例模式,即scope singleton 另外scope還有prototype request session global session作用域。scope prototype 多例 scope預設是單例模式 singleton 如果需要設定的話 scope prototype 1.sin...

Spring中的 scope註解

預設是單例模式,即scope singleton 另外scope還有prototype request session global session作用域。scope prototype 多例 scope預設是單例模式 singleton 如果需要設定的話 scope prototype 1.sin...