將一大堆@Autowired bean放入超類中是否有任何缺點,這些超類沒有在該類中使用,而是在擴展超類的子類中使用類?自動裝配超類中的Spring beans被許多小類所延伸
2
A
回答
5
不,沒有缺點。
只要確保你不使用自動佈線的構造函數,因爲它很快就會成爲一種痛苦來支持它們。
3
您的代碼看起來很醜,春季啓動可能需要幾毫秒的時間,當然這個字段需要更多的內存(Java需要的字段)。但除此之外,我不會期望任何問題。
而對於「正常」運行應該沒有影響(除內存)
我認爲可以說10到30場讓說高達10和豆類。如果你有TON的領域,比做一個測試並測量內存和性能的影響。
0
一如既往,這取決於。如果你所有的bean都是單身職位,那麼這不應該成爲一個問題,這是「官方派對」。
如果你的bean被請求作用域(比如一個控制器類),你可能會有比你意識到的更大的問題。也許有些依賴關係也不是單身人士?由於您正在構建依賴關係及其依賴關係等,因此可以輕鬆地爲請求作用域控制器類的每個實例化構建500個bean。
現在由於bean的實例化速度與春季的冰川一樣緩慢,所以確實存在問題。春季框架的官方派對似乎是忽略了這個問題,因爲我相信@Bozho會在這個迴應的評論中強烈辯護。所有這些顯然是因爲「網絡示波器」在2.0版的現有設計中被重新安裝,並且由於支持的大量用例,這完全是在現有實施的前提下完成的。
解決的方法當然是規範化你的依賴關係;不要把它們都放在基類中。如果你很懶,你可以在ApplicationContext中進行連接,並在需要時爲每個服務使用顯式調用getBean。當然,這與春天的任何設計準則完全相反。
相關問題
- 1. java - 將類延伸到庫超類
- 2. 實現類的Spring自動裝配
- 3. Spring自動裝配類與接口?
- 4. Spring @Configuration類需要自動裝配
- 5. 重寫延伸類
- 6. 使用的擴展,延伸多個類
- 7. 的Spring bean自動裝配誤差
- 8. Spring數據中的類自動裝配問題Mongo存儲庫
- 9. 問題延伸的PHP類
- 10. 通用參數「延伸」多類
- 11. 如何在Wicket Session類中自動裝配Spring bean?
- 12. 爲什麼Spring框架不允許自動裝配原始類型?
- 13. Java Spring自動裝配配置文件
- 14. 如何使用Spring自動裝配在TestNG的工廠類
- 15. 作出這樣的延伸類Clojure中
- 16. Spring中的自動裝配會話?
- 17. Spring HibernateTemplate - 自動裝配
- 18. Spring 3和JUnit 4(自動裝配)
- 19. 塊的界面被延伸
- 20. Spring類在初始化時自動裝配
- 21. 使用構造函數自動裝配泛型類型[Spring 4.2.5]
- 22. 彈簧自動裝配Struts動作類
- 23. 如何自動裝配動態類
- 24. 加載多次的Spring beans
- 25. 在大氣中廣播,哪類延伸?
- 26. Spring數據JPA環境中的JUnit自動裝配問題
- 27. 將活動中擴展類的值傳遞給SurfaceView中延伸的類
- 28. 的Android - 類延伸的RelativeLayout(的onResume)
- 29. 在PHP延伸的子類中的父類的構造函數
- 30. Spring + Hibernate的,自動裝配SessionFactory的進入休眠DAO
*你認爲什麼是缺點?你*看到一個缺點? – 2012-02-13 21:08:39
Downside =額外的內存使用量,速度下降等等。不,我真的沒有看到任何缺點 - 我只是好奇,看看是否有其他人遇到過任何東西。 – woolyninja 2012-02-13 21:17:50
我會說沒有任何的功能缺點,但有些人可能不喜歡一個擁有x個成員的類,只是爲了讓他們可以通過子類進行訪問。 – 2012-02-13 21:23:50