對Spring來說是相當新的我有一個關於註釋類的問題。當用@Component
註釋一個類時,這是否意味着這個類將是一個Spring Bean,並且默認情況下是一個單例?使用@Component註釋類時,這是否意味着它是Spring Bean和Singleton?
59
A
回答
70
是的,這是正確的。
如果類屬於業務層,你可能要與@Service
代替
進行註解,但有一點,爲了讓被檢測到這些註解,你需要把此行applicationContext.xml
:
<context:component-scan base-package="com.yourcompany" />
關於singletons - 默認情況下spring bean都是單身作用域。你唯一需要考慮的是你不應該在狀態變量中存儲狀態(它們只應該保持依賴關係)。因此,您的應用程序將是線程安全的,並且您不會每次都需要一個bean的新實例。換句話說,你的bean是無狀態的。
3
默認 - 是。
但是,您可以使用@Scope
批註覆蓋此行爲。例如:@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
相關問題
- 1. 空尾註釋?他們是否有/意味着什麼?
- 2. 這是否意味着它可能攔截短信/彩信
- 3. 使用preparedStatement是否意味着不會有任何SQL注入?
- 4. $是什麼?是否意味着在Ruby?
- 5. Spring @Component中注入vaadin @UIScope bean @Component
- 6. 是什麼;是否意味着在Ruby?
- 7. .NET 4.0不使用中等信任,這是否意味着
- 8. xcode printf 0x0000000000000000,這是什麼意思?它意味着空?
- 9. 這是什麼SQL錯誤意味着
- 10. 這是什麼 'CONTENT_TYPE' 意味着
- 11. 當類型名稱是「_Closure $ __ 1」時,這意味着什麼?
- 12. 「bean X注入bean Y」意味着什麼在Spring框架的背景下
- 13. 這個SOAP Fault是否意味着我認爲的意思?
- 14. 這是什麼頭意味着在PHP
- 15. 正斜槓(/)是否意味着目錄?
- 16. ASP.NET是否意味着ASP.NET WebForms?
- 17. 這意味着兩個相同的類是什麼意思?
- 18. @Bean和@Component註解是否相同,但針對Spring Framework中的不同目標?
- 19. 「僅限邀請」是否意味着beta?
- 20. ILOnly = 0是否意味着C++/CLI?
- 21. 新的URL(...)。openConnection()是否意味着POST?
- 22. << - 是否意味着紅寶石?
- 23. 什麼是 '自我.__類__.__ missing__' 意味着
- 24. 這是什麼意思?這意味着Ruby on Rails?
- 25. 這些格式約定是否意味着什麼?
- 26. 這兩個陳述是否意味着同樣的事情?
- 27. part.isMimeType ==「Multipart/*」是否意味着它有附件?
- 28. WebCore的崩潰是否意味着它必然與UIWebView有關?
- 29. 遇到非合式數值 - 這是否意味着
- 30. 這是否意味着光標被Google代碼打開?
當使用@Component和or @Service註釋等。意味着我正在創建Singletons,我是否會遇到併發問題?對我的新手想法來說,它將產生一個在整個ApplicationContext中使用的bean,因此併發用戶將獲得對單個bean的引用。或者我錯過了什麼? – Marco 2011-05-06 07:18:23
@Marco如果你沒有任何狀態(實例變量不同於spring bean),那麼不會發生併發問題。 – Bozho 2011-05-06 08:35:05
你「想要」每次都需要一個bean的新實例,否則「不會」每次都需要一個bean的新實例? – Harshana 2016-01-20 11:51:06