spring中注解屬性scope的prototype是什么意思?


spring中注解屬性scope的prototype是什么意思?

 

默認情況下,從 bean工廠所取得的實例為Singleton(bean的singleton屬性) Singleton:

Spring容器只存在一個共享的bean實例,默認的配置。

Prototype: 每次對bean的請求都會創建一個新的bean實例。

二者選擇的原則:有狀態的bean都使用Prototype作用域,而對無狀態的bean則應該使用singleton作用域。


 

在 Spring2.0中除了以前的Singleton和Prototype外又加入了三個新的web作用域,分別為request、session和 global session。如果你希望容器里的某個bean擁有其中某種新的web作用域,除了在bean級上配置相應的scope屬性,還必須在容器級做一個額外 的初始化配置。即在web應用的web.xml中增加這么一個ContextListener: org.springframework.web.context.request.RequestContextListener 以上是針對Servlet 2.4以后的版本。

spring 默認scope 是單例模式
這樣只會創建一個Action對象
每次訪問都是同一個Action對象,數據不安全
struts2 是要求 每次次訪問 都對應不同的Action
scope="prototype" 可以保證 當有請求的時候 都創建一個Action對象

 https://blog.csdn.net/u011897392/article/details/37533215


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM