




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第13章DAO设计模式,本章将详细介绍什么是DAO,以及使用DAO设计模式的优点。还将介绍如何设计数据库连接类、VO类、DAO接口、DAO实现类以及DAO工厂类。通过本章的学习,读者应该能够完成如下几个目标。了解什么是DAO设计模式及其优点熟练掌握如何定义数据库连接类熟练掌握如何定义VO类熟练掌握如何定义DAO接口、DAO类及DAO工厂类熟练掌握如何使用DAO实现数据库操作,13.1DAO简介,DAO设计模式是属于J2EE数据层的操作,使用DAO设计模式可以简化大量代码和增加程序移植性。回忆之前使用JDBC操作数据库,都是直接在JSP页面中写JDBC代码。这样导致JSP页面中包含大量的HTML代码和JSP代码,显示和功能代码混在一起,难以维护。因为要在JSP中使用JDBC代码,所有还必须导入“java.sql.*”包。这样的设计是非常不合理的,JSP只需要关注数据的显示,而不需要去关注数据是从哪里来的,获得怎么得来的。使用DAO设计模式可以很好的解决如上的问题。DAO包含几个重要部分,分别如下。(1)DAO接口(2)DAO实现类(3)DAO工厂类(4)VO类(5)数据库连接类,13.2DAO各部分详解,DAO设计模式包括5个重要部分,分别为数据库连接类、VO类、DAO接口、DAO实现类及DAO工厂类。下面将通过实例来介绍如何定义这5部分内容。,13.2.1数据库连接类,数据库连接类的主要功能是连接数据库并获得连接对象,以及关闭数据库。通过数据库连接类可以大大的简便开发,在需要进行数据库连接时,只需创建该类的实例,并调用其中的方法就可以获得数据库连接对象和关闭数据库,不必再进行重复操作。,示例代码DataBaseConnection.java,13.2.2VO类,VO类是一个包含属性和表中字段完全对应的类。并在该类中提供setter和getter方法来设置并获得该类中的属性。,示例代码User.java,13.2.3DAO接口,DAO接口中定义了所有的用户的操作,如添加记录、删除记录以及查询记录等。不过因为是接口,所以仅仅是定义,需要子类来实现。,示例代码UserDAO.java,13.2.4DAO实现类,DAO实现类实现了DAO接口,并实现了DAO接口中定义的所有方法。在DAO实现中通过连接数据库进行数据库操作。,示例代码UserDAOImpl.java,13.2.5DAO工厂类,在没有DAO工厂类的情况下,必须通过创建DAO实现类的实例才能完成数据库操作。这时就必须知道具体的子类,对于后期的修改非常不便。如后期需要创建一个操作Oracal的DAO实现类,这时就必须修改所有的使用DAO实现类的代码。使用DAO工厂类可以比较方便的对代码进行管理,而且可以很好地解决后期修改的问题,通过该DAO工厂类的一个静态方法来获得DAO实现类实例。这时如果需要替换DAO实现类,只需修改该DAO工厂类中的方法代码,而不必修改所有的操作数据库代码。,示例代码DAOFactory.java,13.3使用DAO完成数据库操作,有了前面定义的DAO的5个部分,就可以通过DAO工厂获得DAO实现类实例。通过DAO实现类中的方法就可以完成添加、更新、删除、按ID查询记录操作。13.3.1添加记录示例代码AddUserDemo.jsp13.3.2更新记录示例代码UpdateUserDemo.jsp13.3.3删除记录示例代码DeleteUserDemo.jsp13.3.4按ID查询记录示例代码QueryByIdDemo.jsp,13.4综合练习,下面是一个使用DAO完成查询所有记录的示例。,13.5小结,在编程的世界里,人们都在不断地总结经验,把这些经验归纳起来,就形成了一种模式。本章介绍的DAO模式,就是一个非常好的进行数据库操作的模式。通过DAO设计模式,可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 停车起步考试题目及答案
- 田径铅球理论考试题及答案
- 广东省东莞市松山湖莞美学校2024-2025学年上学期七年级数学期末教学质量检测(含答案)
- 2025年公需科目题目及答案
- 2025年公需科目考试试题与答案(保密意识与保密常识教育)
- 2025年公共营养师职业资格考试试题及答案
- 2025年高压电工复审考试练习题模拟题库及解析答案
- 2025年高校学生应征入伍板块题库+答案
- 2025年高级电工证考试题库及答案
- 高三题库及答案安徽
- 医院麻醉科诊疗常规修订版本(2022年)
- 2023年兽医实验室考试:兽医实验室技术理论真题模拟汇编(共285题)
- 医院护理培训课件:《妊娠期急性胃肠炎护理查房》
- 食品欺诈和预防知识专题培训课件
- 锅炉专业培训教材全集
- 国家职业资格-中级维修电工试题2(含答案)
- 旅客运输心理学PPT完整全套教学课件
- 老年合理用药课件
- 消失模白区岗位操作规程
- 2023学年完整公开课版金瓯永固杯
- 初高中语文语法知识衔接课-短语句子
评论
0/150
提交评论