DAO模式是接口的一个典型应用。
阅读附件中的参考在吗代码:
-
StudenDaoListImpl.java与StudentDaoArrayImpl.java有何不同?
答:
从上两张图,显而易见:
StudenDaoListImpl.java与StudentDaoArrayImpl.java的数据存储方式不同。
StudenDaoListImpl.java是以随机数组链表存储的,而StudentDaoArrayImpl.java是以数组形式存储。相对于以数组形式存储,利用用ArrayList存储使用动态数组使其大小可变,同时使用ArrayList类方法得代码编写更加方便简洁。 -
StudentDao.java文件是干什么用的?为什么里面什么实现代码都没有?
用处:
StudentDao.java文件里存放的StudentDao是一个接口,一系列对学生数据 *** 作方法的声明。说明StudentDao.java文件主要是让处理及 *** 作data库更为方便,将很多复杂的data *** 作语法和业务逻辑分开,为实现DAO设计服务。
原因:
接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 -
使用搜索引擎搜索“Java DAO”,选出几句你能看懂的、对你最有启发的话。请结合接口知识去理解。
DAO 模式的优势就在于它实现了两次隔离。
1、隔离了数据访问代码和业务逻辑代码。业务逻辑代码直接调用DAO方法即可,完全感觉不到数据库表的存在。分工明确,数据访问层代码变化不影响业务逻辑代码,这符合单一职能原则,降低了藕合性,提高了可复用性。
2、隔离了不同数据库实现。采用面向接口编程,如果底层数据库变化,如由 MySQL 变成 Oracle 只要增加 DAO 接口的新实现类即可,原有 MySQ 实现不用修改。这符合 “开-闭” 原则。该原则降低了代码的藕合性,提高了代码扩展性和系统的可移植性。 -
尝试运行Test.java。根据注释修改相应代码。结合参考代码回答使用DAO模式有什么好处?
修改后:
好处:
隔离了不同数据库实现。可以实现多种数据结构存储,且各方式之间互不影响,添加新方式方便,改变存储方式方便。 -
可选:编写一些使用DAO模式的代码。比如使用文件作为购物车存储底层。
参考视频:5.4 案例:DAO模式
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)