Java-DAO模式代码阅读及应用

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

StudenDaoListlmpl.java是使用了java.util.ArrayList,利用链表来存储学生的信息; StudentDaoArrayImpl.java是直接将学生信息存入数组里。

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

StudentDao.java文件里面定义了一个StudentDao的接口(数据访问接口),并包含了三个方法的声明。

因为接口只用于定义行为,但不行为的操作,所以文件里的三个方法都没有操作和实现的代码。

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

  • DAO 模式的优势就在于它实现了两次隔离。
    • 1、隔离了数据访问代码和业务逻辑代码。业务逻辑代码直接调用DAO方法即可,完全感觉不到数据库表的存在。分工明确,数据访问层代码变化不影响业务逻辑代码,这符合单一职能原则,降低了藕合性,提高了可复用性。
    • 2、隔离了不同数据库实现。采用面向接口编程,如果底层数据库变化,如由 MySQL 变成 Oracle 只要增加 DAO 接口的新实现类即可,原有 MySQ 实现不用修改。这符合 "开-闭" 原则。该原则降低了代码的藕合性,提高了代码扩展性和系统的可移植性。

DAO模式提供了数据访问代码和业务逻辑代码的操作接口,将数据访问和业务逻辑分离对上层提供面向对象的数据访问接口。

(引用自https://www.runoob.com/note/27029)

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

无论是以数组还是列表的方式哪种方式实现,代码的运行结果都一样(如上图所示)。

DAO模式的好处:

  1. 接口的使用将学生数据访问的方法和具体时间操作分开来,利于维护。
  2. “开-闭”的原则,降低了代码的耦合性,提高了代码的拓展性。
posted @ 2020-10-25 19:03  AJAJAJAJAJAJ  阅读(112)  评论(0编辑  收藏  举报