2013-04-08 187 views
4

我正在開發一個需要與數據庫建立連接的應用程序。爲了通過這個連接來操作,我使用了DAO模式。我的問題與代碼的組織以及接口和實現的名稱有關。當前包的結構是下一個:DAO命名約定

  • mainpackage
  • mainpackage.model - >每個表以產生具有從DB提取的數據對象
  • mainpackage.persistence的模型 - >的ConnectionManager
  • mainpackage.persistence.dao - >接口和實現

關於命名Ø f接口我認爲使用ClassDAO和DefaultClassDAO這樣的實現是一個好主意,只要我不知道如何命名它。你怎麼看?這是否有任何約定?

回答

2

我會使用「域驅動設計」中描述的約定。

  • mainpackage
  • mainpackage.model - >包含 '倉庫' 的界面,比如UserRepository,ProfileRepository描述的操作來管理您的實體存儲(存儲,查找,等等)。這樣你就不會泄漏你的存儲是一個數據庫。
  • mainpackage.model.db(或sql或其他) - >包含SqlUserRepository,SqlProfileRepository實現mainpackage.model中的接口並敲擊數據庫。

你甚至可以把DB類放在不同的子項目中。我認爲不要將數據庫置於設計的中心並將其視爲實現細節非常重要。