Posted on 2008-07-19 12:36
城市劣人 阅读(1460)
评论(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