DAO模式是接口的一个典型应用。

阅读附件中的参考代码:

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

  • 二者都用于记录学生信息并且都声明了StudentDao接口,但StudenDaoListImpl.java使用ArrayList动态数组实现,使其内存可改变;而StudentDaoArrayImpl.java使用数组来储存学生信息,其数组长度是不变的。

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

  • StudentDao接口定义了三种抽象方法写入,读取,输出。即:
    • addStudent写入学生信息;
    • getStuByName读取学生信息;
    • diplayAllStudents输出显示学生信息。
  • 因为该文件只确定了方法的声明,没有对方法进行实现。

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

  • DAO (DataAccessobjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访问。通俗来讲,就是将数据库操作都封装起来。
  • DAO 模式提供了访问关系型数据库系统所需操作的接口,将数据访问和业务逻辑分离对上层提供面向对象的数据访问接口。
  • DAO 模式的优势就在于它实现了两次隔离。
    • 隔离了数据访问代码和业务逻辑代码。
    • 隔离了不同数据库实现。
  • 理解:
    • 使用DAO可以分离开来便于管理,有层次感,方便代码的编写,有一些比较清楚的逻辑,防止我们在写代码的过程中出现思路混乱等问题,具有灵活性。

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

  • 使用数组实现StudentDaoArrayImpl

  • 使用列表实现StudenDaoListImpl

  • StudentDaoArraylmpl与StudentDaoListImpl都是使用DAO接口来实现操作的,这样可以实现不相关类的相同行为,也可以更加灵活地调用定义函数,使得程序结构清晰,并且此时相同的方法有不同的实现,在选择适合的存储方式和方法时,对代码的改动也较小,灵活性较高,增强了程序的稳定性,好处多多。

5. 可选:编写一些使用DAO模式的代码。比如使用文件作为购物车存储底层。

参考资料

posted on 2020-10-25 17:42    阅读(203)  评论(0编辑  收藏  举报

/*
*/