對於不少基於ssh的項目都有明確的分層,通常分爲action層--》 service層 --》 dao層程序員
一般來講越往下面的dao層的提供的接口越靈活越方便咱們編程,不過對於修改表的數據的接口可能要稍微謹慎,因此dao層通常會封裝好通用的查詢,包含查詢實體,實體列表、分頁查詢,日誌打印等 由於對於大多數實體來講基本是查詢方式會多一些,若是一個項目是多人協做的狀況下,封裝通用的查詢,能夠造成一個標準,避免不一樣程序員命名規則不同,致使代碼維護不方面,通用的代碼抽離出來同時方便維護,若是發現bug的時候修改對應的錯誤函數就能夠知足需求。可是對應複雜的業務多表關聯查詢,不少初學者可能有一些模糊,不知道將dao操做函數對應於哪一個實體對應的dao,本人推薦將該函數放在跟實體最接近的dao中。編程
一、dao的api設計:api
對於通用的場景:ssh
public T findXXById 根據id來查詢對應的實體函數
T findXXByProperty 根據實體的屬性來查詢對應的實體設計