我不認爲spring會在製作原型時使用clone,如果他們使用反射API並創建一個副本對象並將其稱爲clone/proto,那麼這將是作弊,Springs原型永遠不會滿足任何原型模式的條件。春季原型是否使用克隆並滿足原型模式?
1
A
回答
0
是的,你是對的。 Spring中的@Scope("prototype")
註釋沒有實現GoF的原型設計模式。雖然原型設計模式通過克隆給定原型創建新對象(請參閱here),但Spring的@Scope("prototype")
不會這樣做。它會每次由Spring的默認對象創建機制創建一個新對象(這是我猜測的反射)。如果你看一下Spring的文檔,它埃文斯說,@Scope("prototype")
是Java的new
運營商的替代品:
在某些方面,Spring容器的關於一個 原型作用域的bean的作用是Java新的替代品運營商。
(參見here)
+0
謝謝托馬斯先生,我對春季社區的建議是將原型改爲多層次,如果他們這樣做,那麼就沒有問題了,而更多的原型(克隆)是一個非常好的概念,他們也應該爲此提供實施 –
相關問題
- 1. 原型設計模式是否真的只是克隆?
- 2. Javascript - 克隆原型函數
- 3. 是否使用原型模式
- 4. 使用原型克隆所有「觀察」克隆元素
- 5. 以下原型設計模式的春天原型
- 6. 使用類原型模式
- 7. 原型模式
- 8. 克隆對象的原型繼承 - IE10
- 9. 原型是反模式嗎?
- 10. 使用原型,構建器模式的Java對象克隆(附加類成員)
- 11. 有沒有辦法用更新的原始模型替換克隆模型?
- 12. 春季範圍=「原型」的用途是什麼?
- 13. JTable克隆/不是模型
- 14. delphi原型模式
- 15. 創建原型副本,我應該使用克隆嗎?
- 16. 春季原型豆和春天的好處
- 17. 何時使用原型設計模式
- 18. 在閉包中使用原型模式
- 19. 模式使用原型軌道
- 20. 滿足Tseitin編碼模型
- 21. 在原型中使用$$是否不好?
- 22. Maven原型基本春季休眠struts2應用程序
- 23. c原型設計模式#
- 24. Swift原型設計模式
- 25. 春豆範圍原型
- 26. 是否有Gradle quickstart原型?
- 27. 在克隆分支合併到原點
- 28. Github:克隆存儲庫,更改克隆,並提交原始庫
- 29. 使用原型
- 30. 春季ExceptionHandler訪問模型?
[以下原型設計圖案彈簧原型]的可能的複製(http://stackoverflow.com/questions/26609980/spring-prototype-following-prototype-design-pattern) – jaco0646