zoukankan      html  css  js  c++  java
  • 5-互评-OO之接口-DAO模式代码阅读及应用

    1. StudenDaoListImpl.java与StudentDaoArrayImpl.java有何不同?

    StudenDaoListImpl.java中使用List接口指向ArrayList类来存储student数据,而StudentDaoArrayImpl.java中直接使用Student数组来存储student数据。

    2. StudentDao.java文件是干什么用的?为什么里面什么实现代码都没有?

    StudentDao.java文件用于存放StudentDao接口;因为接口之中只需要有一些方法声明,需要被实现才能发挥它的作用,而实现该接口的所有类都有相同的方法形态,但是它们之间方法的具体实现不同。

    3. 使用搜索引擎搜索“Java DAO”,选出几句你能看懂的、对你最有启发的话。请结合接口知识去理解。

    1. DAO (DataAccessobjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访问。通俗来讲,就是将数据库操作都封装起来。
      理解:DAO模式通过定义接口,然后让不同的类来实现该接口,可以将对数据的操作封装起来,从外部来看,对数据的操作都是一样的,但是在类的内部对数据的操作往往都有所不同。
    2. DAO 模式的优势在于隔离了不同数据库实现。
      理解:DAO模式采用面向接口编程,当使用的数据库发生变化时,只需要根据接口实现一个操作新的数据库的新类即可,而无需对原有的类进行修改,降低了代码的藕合性,提高了代码扩展性和系统的可移植性。

    4. 尝试运行Test.java。根据注释修改相应代码。结合参考代码回答使用DAO模式有什么好处?

    修改前的代码:

    修改前的运行结果:

    修改后的代码:

    修改后的运行结果:

    使用DAO模式有什么好处?

    1. 隔离了数据访问代码和业务逻辑代码。在Test.java的main方法中,只需要调用addStudent、getStuByName、diplayAllStudents即可实现对student数据的增添、获取和打印功能,而无须具体了解是如何访问到这些数据的。
    2. 隔离了不同数据库实现。参考代码中StudentDaoArrayImpl和StudenDaoListImpl两个类均实现了StudentDao接口,它们具有相同的方法,但是它们具体存储数据的形式不同,想要使用哪种数据存储方式就注释掉另外一种即可(StudentDao sdm = new StudentDaoArrayImpl(50);//使用数组实现StudentDao sdm = new StudenDaoListImpl();//使用列表实现),而无须修改数据访问代码。

  • 相关阅读:
    科技服务队的日子第一次上班
    快速删除word中的表格
    名词探疑:为什么HTML里单选叫radio呢?
    jquery 保存DOM对象并转换
    作业
    第二次作业
    第三次作业
    WPF自定义Window样式(2)
    sql server中的分页数据查询
    WPF自定义Window样式(1)
  • 原文地址:https://www.cnblogs.com/zzhmyblog/p/13872824.html
Copyright © 2011-2022 走看看