我想實現一個銷售和庫存管理系統,對如何在系統中應用依賴注入感到困惑。我想擁有一個使用數據庫來保存其數據的庫存類,如果我有一個處理數據庫連接的類,比如說DBConnectionManager,然後是使用DBConnectionManager並與數據庫交互的數據庫層DBWrapper,然後充當數據庫之間的抽象層DB和使用數據庫的類,例如Inventory,Users,Customers,Sales。或者,我應該在每個用戶,客戶......類中編寫sql代碼。如何在庫存管理系統中應用依賴注入
1
A
回答
1
有無蜉tryed Repository模式?
與DI一起使用非常好,你可以建立一個根類,保存連接和基本操作,比如更新,刪除等等......
,然後擴展這個類來創建更有意義的名稱更具體的行爲......
這裏是一個關於它的
http://nhibernate.hibernatingrhinos.com/27/the-repository-pattern
1
IMO,你應該有一個DAO爲你的數據庫活動/操作創建的接口。這個DAO接口將具有用於存儲/檢索數據的通用操作。然後你可以讓類實現這個DAO接口;一個類將啓用數據庫持久性,一類將啓用基於文本文件持久性(如果你需要一個)等
你的數據庫實現DAO又將有java.sql.Connection
參考,這將使它能夠連接到數據庫。您將使用依賴機制(如Spring或Guice)在運行時爲DAO接口和連接對象注入適當的實例。
基本上,學會用界面來思考,而不是使用繼承來構造(並且不要回避使用繼承來避免代碼重複;只要確保超類不構成合同的一部分;或者沒有暴露於外界。我個人認爲Google Guice docs如何啓動模塊的時候,(在依賴注入的情況下)的良好來源。
+0
鏈接,這是非常有幫助的感謝 –
相關問題
- 1. 如何在克隆存儲庫時管理依賴關係?
- 2. C#依賴注入 - 如何注入無源的依賴關係?
- 3. 使用git管理庫依賴關係
- 4. 如何在Nuget庫中管理Castle Windsor依賴關係
- 5. 如何使用統一(基礎)注入依賴關係?
- 6. IoC /依賴注入 - 如何處理上下文依賴關係(使用Structuremap)
- 7. npm:依賴關係如何管理?
- 8. 如何管理.net依賴關係
- 9. 使用靜態庫和應用程序管理依賴關係
- 10. 管理依賴關係
- 11. JavaScript依賴關係管理
- 12. 如何實現依賴/包管理系統?
- 13. 使用統一註冊實例注入依賴關係
- 14. 如何管理Javascript庫中的依賴關係
- 15. 何時注入依賴關係或在Aurelia中如何使用?
- 16. 在Global.asax中注入依賴關係
- 17. 在IIS中託管時將依賴關係注入到IErrorHandler中
- 18. 我應該如何管理AngularJS中的依賴關係?
- 19. 如何使用lein來管理依賴關係的依賴關係?
- 20. 在Sinatra應用程序中注入依賴關係
- 21. 如何處理抽象第三方依賴項(依賴注入)?
- 22. Angular 2依賴注入 - 如何知道在哪裏插入依賴關係
- 23. Ruby依賴注入庫
- 24. 微軟依賴注入庫
- 25. 使用依賴注入來注入依賴注入器
- 26. 如何處理注入到富域模型的依賴關係?
- 27. 使用Maven管理DLL依賴關係
- 28. 使用Hadoop Streaming管理依賴關係?
- 29. R中的依賴關係管理
- 30. 釜中的Jar依賴關係管理
感謝鏈接 –