OO之接口-DAO模式代码阅读及应用

OO之接口-DAO模式代码阅读及应用

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

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

StudentDao接口提供了一个统一的操作方法名,同样的方法名在不同的类中可以有不同的具体实现过程。StudenDaoListImpl类和StudentDaoArrayImpl类都声明了StudentDao接口,但它们StudenDaoListImpl类的public boolean addStudent(Student student); 和StudentDaoArrayImpl类的 public boolean addStudent(Student e) ;public void diplayAllStudent(); 有不同的方法体。StudenDaoListImpl用ArrayList来存放学生类对象,StudentDaoArrayImpl直接用学生类型数组来存放学生类对象,因此它们对接口中三种方法的实现过程不一样。

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

DAO (Data Access Objects) 数据访问对象是第一个面向对象的接口,StudentDao.java文件是用来存放接口的。
因为接口中的方法是在其他类中实现,所以StudentDao.java文件里面什么实现代码都没有。

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

DAO (Data Access Objects) 数据访问对象,这些对象用于访问修改数据库。
理解:DAO模式就是后台数据进行的数据库操作,就是dao层里做的只是和数据库相关的内容,增删改查 。数据库的修改只要修改DAO层的访问方式,不用整个项目都进行修改。可以使项目简单易懂。
三层模式应该是数据连接层,业务逻辑层,表现层,DAO俗称数据连接层,完成与数据库的交互。
理解:DAO主要是用来和数据库打交道的,因为大部分的项目用的都是三层结构搭建的。

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

<1>


修改后的:

<2>

1.StudentDAO DAO是用来操作数据库的,比如说,存储,删除,更新等操作都已经在文件中配置好了。(Data Access Object DAO)设计模式,将DAO低级别的数据访问逻辑与高级别的业务逻辑分离,java实现之后一般会在文件末尾加个DAO这样好统一管理,使人容易理解。
2.DAO 模式隔离了数据访问代码和业务逻辑代码。业务逻辑代码直接调用DAO方法即可,完全感觉不到数据库表的存在。分工明确,数据访问层代码变化不影响业务逻辑代码,这符合单一职能原则,降低了藕合性,提高了可复用性。
3.DAO 模式隔离了不同数据库实现。采用面向接口编程,如果底层数据库变化,如由 MySQL 变成 Oracle 只要增加 DAO 接口的新实现类即可,原有 MySQ 实现不用修改。这符合 "开-闭" 原则。该原则降低了代码的藕合性,提高了代码扩展性和系统的可移植性。

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

参考视频:5.4 案例:DAO模式
来自:https://www.runoob.com/note/27029

posted @ 2020-10-25 11:15  zhuzii  阅读(113)  评论(0编辑  收藏  举报