DAO设计模式基础

 

传统两级模式的问题:


1、所有的JDBC代码写在JSP页面之中,维护困难。

2、JSP中不应该使用任何sql包,即:不能在JSP中直接使用java.sql.*,原因:JSP只关注于数据的显示,

     而不关心数据从哪里来,或向哪里存储。

3、所有的数据库操作代码最好使用PreparedStatement

 

 

 

J2EE的组件层次:

客户端 —>表示层(*.jsp/servlet)—>业务层—>数据层—>数据库   

就是在客户端发送一个请求到servlet,servlet调用相应的javabean,javabean从数据层对数据库进行操作。

 

 

DAO属于J2EE数据层的操作:

即:在DAO中封装了一个表在一个项目中所应该具有的全部操作。

 

 


 

设计思想:

首先需要规定整个模块之中对person表的全部操作:

*增加  *修改  *删除  *按ID查询 *查询全部  *模糊查询

按以上要求,规定出操作此张表的标准,之后只要针对不同的数据库实现这些标准即可。

在JAVA中只要通过接口可以定义接口 —>DAO定义的就是一个接口。

 

 

 

案例:

   说明:比如说一个图书馆,图书馆可以增加书籍。如果要在增加之前,应该把一本书给图书馆才可以。

   插入—>针对对象插入

   对象—>VO、TO、POJO(值对象、传输对象、最根本的JAVA对象)即:最包含属性和setter和getter方法的类

一、封装数据库连接
 
二、定义对象的属性和数据库中的表中的字段完全对应
 
三、定义DAO接口 
 
四、定义好接口之后,要定义出接口的具体实现类,具体实现DAO接口中对数据库表中的一切操作。
定义一个数据库连接类,由数据库连接类统一管理数据库连接。
 
五、前台JSP可以直接通过VO对象间接访问数据库
 
六、使用工厂类Factory,使前台(JSP页面)不用关心后台具体的子类
 
前台JSP代码:PersonDao dao = new PersonImpl()
就可以改为   PersonDao dao = DAOFactory.getDAOInstance();

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值