如有错误欢迎指正
数据访问对象模式(Data Access Object Pattern)或 DAO 模式。是指位于业务逻辑和持久化数据之间实现对持久化数据的访问。通俗来讲,就是将数据库操作都封装起来。
需要对数据库操作的时候,先创建一个对象,对它进行数据的操作,操作之后再把它存到数据库中
详解如下
以下是数据访问对象模式的三个参与者:
- 数据访问对象接口(Data Access Object Interface) - 该接口定义了在一个模型对象上要执行的标准操作。(就是下方的StudentDao)
- 数据访问对象实体类(Data Access Object concrete class) - 该类实现了上述的接口。该类负责从数据源获取数据,数据源可以是数据库,也可以是 xml,或者是其他的存储机制。(就是下方的StudentDaoImpl)
- 模型对象/数值对象(Model Object/Value Object) - 该对象是简单的 POJO,包含了 get/set 方法来存储通过使用 DAO 类检索到的数据。(就是下方的Student)
他们之间的关系如下
完成上述三个步骤之后,DAO模式就算基本完成了,然后就可以在使用过程中用到这个模式来操作数据库了。
上面的例子中,用list来代替数据库,所以少了SQL语句的使用,下面展示实战项目中的DAO是如何使用的。
1、entity层
2、mapper层,接口
3、mapper层,接口实现,这一步就是真实的对数据库进行操作的SQL语句,写在xml文件中,需要在配置文件中,通过MyBatis将接口类和xml文件做映射,这样,用接口类的时候就可以执行xml文件中的SQL语句了。
到此为止,DAO模式就完成了
4、然后在service层进行业务逻辑的代码
如有错误欢迎指正