dao设计模式简介
dao全称是data access object,数据库访问对象,主要的功能就是用于进行数据操作的,在程序的标准开发架构中属于数据层的操作
企业分层架构
客户层:因为现在都采用了B/S开发架构,所以一般都使用浏览器进行访问。
显示层:使用JSP/Servlet进行页面效果的显示
业务层:(Business Object,业务对象):会将多个原子性的DAO操作进行组合,组合成一个完整的业务逻辑。
数据层(DAO):提供多个原子性的DAO操作,例如:增加、修改、删除等,都属于原子性的操作。
资源层主要是数据库的操作层,里面可以进行各种的数据存储,但是这些数据存储操作的时候肯定依靠SQL语句,之前也发现了,如果在一个程序中出现了过多的SQL语句直接操作,则jsp页面变得相当复杂,而且也不便于程序的可重用性。
可以通过一个专门的数据库的操作组件完成,那么这个就是数据层的功能
业务层是整个项目的核心。现在我们要学的是DAO数据层。
DAO组成
在整个DAO中实际上都是以接口为操作标准的,即:客户端依靠DAO实现的接口进行操作,而服务端要将接口进行具体的实现。DAO由以下几个部分组成。
1. DatabaseConnection:专门负责数据库的打开与关闭操作的类
2.VO:主要由属性、setter、getter方法组成,VO类中的属性与表中的字段相对应,每一个VO类的对象都表示表中的每一条记录;
3.DAO:主要定义操作的接口,定义一系列数据库的原子性操作,例如:增加、修改、删除、按ID查询等;
4.Impl : DAO接口的真实实现类,完成具体的数据库操作,但是不负责数据库的打开和关闭;
5 Proxy :代理实现类,主要完成数据库的打开和关闭,并且调用真实实现类对象的操作
6 Factory :工厂类,通过工厂类取得一个DAO的实例化对象