Posted on 2008-07-19 12:36
城市劣人 閱讀(1466)
評論(0) 編輯 收藏
DAO模式在現在的開發中應用非常的廣泛,它可以幫助我們實現持久化邏輯和業務邏輯的分離,同時實現對多種持久化實現的支持。當然現在你可以通過
hibernate來實現對多種持久化的支持,由于新的技術新的方式的出現,DAO也相應的做出了一些調整,比如泛型DAO,在SpringSide中有
很還得例子可以參考這方面的實現。
這里聊下傳統意義上的DAO模式(在閻宏的JAVA與模式書中有詳細的介紹),需要注意的幾個方面:
1、不要DAO中出現業務邏輯
DAO只需關注持久化部分,可以通過Facade來控制事務的邊界,從而提高DAO的復用性,在不同的事務策略中應用
2、不要過多的在 DAO層捕捉異常
在很多的開發中,會喜歡使用Checked
Exception,拋到servcie層、再到action層,其實在DAO中發生的異常常常是不可恢復的(比如DB的連接問題),所以應該選擇
RuntimeException,我們所需要的只是log的記錄并通知管理員,并通過全局的異常處理畫面告之。
暫時這些,由于ORM的懶加載技術,在DAO中可能會有些調整,為了增加DAO的復用性,這方面的技術也應該剝離出來,不過暫時還沒這么處理過,所以無法總結,希望有這方面經驗的人提供一些
更多詳情請參見:www.hao-se.cn