2011-07-08 30 views
1

我想實現一個銷售和庫存管理系統,對如何在系統中應用依賴注入感到困惑。我想擁有一個使用數據庫來保存其數據的庫存類,如果我有一個處理數據庫連接的類,比如說DBConnectionManager,然後是使用DBConnectionManager並與數據庫交互的數據庫層DBWrapper,然後充當數據庫之間的抽象層DB和使用數據庫的類,例如Inventory,Users,Customers,Sales。或者,我應該在每個用戶,客戶......類中編寫sql代碼。如何在庫存管理系統中應用依賴注入

回答

1

有無蜉tryed Repository模式?

與DI一起使用非常好,你可以建立一個根類,保存連接和基本操作,比如更新,刪除等等......

,然後擴展這個類來創建更有意義的名稱更具體的行爲......

這裏是一個關於它的

http://nhibernate.hibernatingrhinos.com/27/the-repository-pattern

+0

感謝鏈接 –

1

IMO,你應該有一個DAO爲你的數據庫活動/操作創建的接口。這個DAO接口將具有用於存儲/檢索數據的通用操作。然後你可以讓類實現這個DAO接口;一個類將啓用數據庫持久性,一類將啓用基於文本文件持久性(如果你需要一個)等

你的數據庫實現DAO又將有java.sql.Connection參考,這將使它能夠連接到數據庫。您將使用依賴機制(如Spring或Guice)在運行時爲DAO接口和連接對象注入適當的實例。

基本上,學會用界面來思考,而不是使用繼承來構造(並且不要回避使用繼承來避免代碼重複;只要確保超類不構成合同的一部分;或者沒有暴露於外界。我個人認爲Google Guice docs如何啓動模塊的時候,(在依賴注入的情況下)的良好來源。

+0

鏈接,這是非常有幫助的感謝 –