勵志

勵志人生知識庫

spring作用域

Spring框架提供了多種作用域來滿足不同場景下的需求,主要有以下五種作用域:

singleton(單例)。此作用域的Bean在Spring容器中只存在一個實例,所有對該Bean的引用都指向同一個對象,適合無狀態的Bean,如工具類或服務類。

prototype(原型)。每次從容器中請求此作用域的Bean時,都會創建一個新的實例,適合有狀態的Bean,如需要維護用戶會話信息的Bean。

request(請求)。此作用域的Bean為每個HTTP請求創建一個實例,適用於在單個HTTP請求中需要維護狀態的場景。

session(會話)。此作用域的Bean為每個HTTP會話創建一個實例,適用於在多個請求之間需要維護狀態的場景,如用戶會話。

application(全局)。此作用域的Bean在整個Web套用期間只創建一個實例,適用於存儲全局配置數據等。

這五種作用域中,「singleton」和「prototype」是最基本且最常用的。根據不同的套用場景和需求,可以選擇合適的Bean作用域以保證套用的正確性和效率。