Spring中的 scope註解

2021-08-21 13:17:35 字數 1920 閱讀 8740

scope,也稱作用域,在 spring ioc 容器是指其建立的 bean 物件相對於其他 bean 物件的請求可見範圍。在 spring ioc 容器中具有以下幾種作用域:基本作用域(singleton、prototype),web 作用域(reqeust、session、globalsession),自定義作用域。

singleton: 乙個spring容器只有乙個bean的例項,此為spring的預設配置

prototype: 每次通過getbean方法取得的prototype都會新建乙個bean例項

request: 給每個http request新建乙個bean例項

session: 給每個http session新建乙個bean例項

globalsession: 這個只在portal應用中用,給每個global http session新建乙個bean例項

下面就是通過**解釋基本作用域singleton與prototype的區別

建立singletonservice類:

package com.example.testdemo.service;

import org.springframework.context.annotation.scope;

import org.springframework.stereotype.service;

@service

//@scope(value = "singleton") spring預設

public class singletonservice

建立prototypeservice類:

package com.example.testdemo.service;

import org.springframework.context.annotation.scope;

import org.springframework.stereotype.service;

@service

@scope(value = "prototype")

public class prototypeservice

建立scopeconfig類

package com.example.testdemo.config;

import org.springframework.context.annotation.componentscan;

import org.springframework.stereotype.component;

@component

@componentscan("com.example.testdemo.service")

public class scopeconfig

建立啟動類:

package com.example.testdemo;

import com.example.testdemo.config.scopeconfig;

import com.example.testdemo.service.prototypeservice;

import com.example.testdemo.service.singletonservice;

public static void main(string args)

}

執行結果為:

從而驗證了singleton與prototype的區別

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...

Spring中的 scope註解

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