数据访问对象模式
数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。
以下是数据访问对象模式的参与者。
1、数据访问对象接口(Data Access Object Interface)——该接口定义了在一个模型对象上要执行的标准操作。
2、数据访问对象实体类(Data Access Object concrete class)——该类实现了上述的接口。该类负责从数据源获取数据,数据源可以是数据库,也可以是 xml,properties,或者是其他的存储机制。
3、模型对象/数值对象(Model Object/Value Object)——该对象是简单的 POJO,包含了 get/set 方法来存储通过使用 DAO 类检索到的数据。
为什么要使用DAO
如果业务代码和数据访问代码完全耦合在一起,代码混乱,逻辑不清晰,为后期维护带来不便。DAO的引入就是把访问数据库的操作面向对象化,隔离不同数据库实现,采用面向接口编程,提高代码扩展性和系统可移植性。降低数据访问代码和业务逻辑代码的耦合度。
如何使用DAO
首先,定义一套DAO标准,即接口,规范数据的增删改查。(也可以不用,直接创建类也可以)
然后,创建具体的实现类
1、因为需要连接数据库,使用JDBC连接池技术,所以最好创建一个lib的文件夹,放置一些数据库驱动和连接池的一些jar包。
2、创建JdbcUtils工具包,应为经常使用数据库会有一些重复的代码,放置在工具包中调用,可以让代码耦合度降低,易于维护。使用起来也方便。
3、建一个DAO工程或包,编写访问数据库的代码,要注意不要放置业务逻辑代码。访问数据库,对表中数据进行封装为类对象,尽量以对象为单位,面向对象编程思想的应用。(使用接口的话,面向接口编程)
4、创建一个test测试包,用于编写代码测试DAO中的方法,使用Junit单元测试。
当然,既然是操作数据库,那么提前创建好数据库和表都是一些准备工作。