设计模式之---数据访问对象模式、前端控制模式

打印 上一主题 下一主题

主题 1454|帖子 1454|积分 4362

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
数据访问对象模式

数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。以下是数据访问对象模式的加入者。


  • 数据访问对象接口(Data Access Object Interface) - 该接口定义了在一个模型对象上要实验的标准操作。
  • 数据访问对象实体类(Data Access Object concrete class) - 该类实现了上述的接口。该类负责从数据源获取数据,数据源可以是数据库,也可以是 xml,或者是其他的存储机制。
  • 模型对象/数值对象(Model Object/Value Object) - 该对象是简单的 POJO,包含了 get/set 方法来存储通过利用 DAO 类检索到的数据。
<hr> 概要

意图

将数据访问逻辑从业务逻辑中分离出来,并将数据访问操作封装在一个专用的类中。
主要解决的问题



  • 解决业务逻辑与数据访问逻辑紧密耦合的问题,提高代码的可维护性和可重用性。
利用场景



  • 当需要将应用步调的数据访问逻辑集中管理,以便简化业务逻辑并易于举行数据操作时。
实现方式



  • 定义DAO接口:声明数据访问操作的方法。
  • 实现DAO类:实现DAO接口,封装对数据源(如数据库)的所有访问逻辑。
  • 数据传输对象(DTO):可选,用于封装从数据源检索的数据。
关键代码



  • DAO接口:声明数据访问和操作的方法。
  • DAO实现:提供DAO接口的具体实现,包含对数据库的访问代码。
应用实例



  • 用户管理应用:用户DAO类负责与数据库交互,管理用户数据的增编削查。
优点


  • 分离关注点:将数据访问逻辑与业务逻辑分离,降低系统的耦合度。
  • 易于维护:数据访问逻辑集中管理,便于维护和更新。
  • 可扩展性:更换数据源或修改数据访问逻辑时,不影响业务逻辑层。
缺点



  • 可能增长复杂性:对于简单的应用步调,引入DAO模式可能增长额外的抽象条理。
利用发起



  • 当应用步调需要与多种数据源交互,或者数据访问逻辑较为复杂时,利用DAO模式。
注意事项



  • DAO类应该只管简单,只包含数据访问逻辑,不包含业务逻辑。
包含的几个主要角色


  • DAO接口(DAO Interface)
         
    • 声明数据访问和操作的方法。  
      
  • DAO实现(DAO Implementation)
         
    • 实现DAO接口,封装对数据源的所有访问逻辑。  


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

诗林

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表