什么是DAO模式,这样的设计模式的优点?

DAO模式实际上是两个某时的组合,Data Accessor模式和Active Domain Object模式。

Data Accessor模式:封装了数据访问实现的机制,通过提供黒盒式数据存取接口,实现数据访问和业务逻辑的分离。

Active Domain Object模式:实现业务数据的对象化封装。

原理:通过对业务层提供基础数据操作的接口实现,如selectinsertupdate

优点:

1.数据存储逻辑的分离:一方面避免业务代码中混杂的JDBC代码,另一方面,数据访问接口与数据访问实现相分离,这样精通数据库的人可以根据接口专注于数据库访问的最优化实现,而精通业务的人可以专注于业务逻辑编码。

2.数据访问底层实现的分离:DAO模式将数据访问分为抽象层和实现层,分离了数据使用和数据访问的底层实现细节。这样可以在保持上层结构不变的情况下,通过更改底层实现来修改数据访问的机制,比如只要通过修改数据访问层实现,我们就可以部署在不同数据库平台上。

3.资源管理和调度的分离:数据访问逻辑从业务逻辑中脱离开来,使数据访问层实现统一的资源调度,通过数据库连接池和各种缓存机制的使用,可以保持上层系统不变的情况下来提高系统性能。

4.数据抽象:通过对底层数据的封装,开发人员可以使用面向对象思想对数据进行操作。比如通过调用方法获取数据比通过SQL语句访问数据库获取数据,在代码上更易于理解,清晰,对日后维护带来便利。

posted @ 2015-09-01 10:00  一天一夜  阅读(3091)  评论(0编辑  收藏  举报