DAO设计模式

Posted zhangcd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DAO设计模式相关的知识,希望对你有一定的参考价值。

  DAO(Data Access Object,数据访问对象)的主要功能是数据操作。使用DAO设计模式来封装数据库持久层的所有操作(CRUD:增删改查),使低级的数据逻辑和高级的业务分离,达到解耦和的目的。在程序的标准开发架构中属于数据层的操作。程序的标准开发架构如下:

  其中客户层、显示层、业务层和数据层分别介绍如下:

  • 客户层:因为现在一般都采用B/S开发架构,所以一般都是用浏览器进行访问。
  • 显示层:使用JSP/Servlet进行页面效果的显示。
  • 业务层:(Business Object,业务对象),会将多个原子性的DAO操作进行组合,组合成一个完整的业务逻辑。
  • 数据层:(DAO)提供多个原子性的DAO操作,如增加、修改、删除等。

 

  在整个DAO中实际上是以接口为操作标准,即客户端依靠DAO实现的接口进行操作,而服务端要将接口进行具体的实现。DAO由以下几个部分组成:

  • DatabaseConnection:专门负责数据库的打开与关闭的类。
  • VO:(Value Object,值对象)主要由属性、setter、getter方法组成,VO类中的属性与表中的字段对应。每一个VO类的对象都表示表中的一条记录。
  • DAO:主要定义操作的接口,定义一系列数据库的原子性操作,如增加、修改、删除、按ID查询等。
  • Impl:DAO接口的真实实现类,完成具体的数据库操作,但是不负责数据库的打开和关闭。
  • Proxy:代理实现类,主要完成数据库的打开和关闭,并且调用真实实现类对象的操作。
  • Factory:工厂类,通过工厂类取得一个DAO的实例化对象。

以上是关于DAO设计模式的主要内容,如果未能解决你的问题,请参考以下文章

JavaWeb技术:DAO设计模式

java web-----DAO设计模式(数据库访问)

面向对象编程和DAO设计模式

DAO 设计模式

工厂设计模式和DAO设计模式有啥区别

Hibernate 中的事务管理与 DAO 设计模式