DAO模式是接口的一个典型应用。
阅读附件中的参考在吗:
1. StudenDaoListImpl.java与StudentDaoArrayImpl.java有何不同?
答:StudenDaoListImpl.java中使用了List链表来储存每个Student的数据,而StudentDaoArrayImpl.java中则是使用数组来存储Student的数据。
2. StudentDao.java文件是干什么用的?为什么里面什么实现代码都没有?
答:用于存放StudentDao接口;因为文件中存放的只是方法的声明,并没有具体的实现代码。实现是通过,根据后台数据存储方式,再定义不同的实现方式。
3. 使用搜索引擎搜索“Java DAO”,选出几句你能看懂的、对你最有启发的话。请结合接口知识去理解。
- 1)DAO模式的作用:隔离业务逻辑代码和数据访问代码
首先DAO模式就将业务逻辑的代码和数据访问的代码隔离开来,在DAO定义接口类就是包含了业务逻辑部分,DAO 实现类则是针对不同数据库给出DAO接口定义方法的具体实现。
使用过程中业务逻辑代码直接调用DAO方法即可,不必考虑是什么数据的方法如何实现。
分工明确,数据访问层代码变化不影响业务逻辑代码,这样提高了可复用性。
- 2)DAO模式的作用:隔离不同数据库的实现
采用面向接口编程,如果底层数据库变化,只要增加 DAO 接口的新实现类即可,不必对原有实现类进行修改。
该原则降低了代码的藕合性,提高了代码扩展性。
4. 尝试运行Test.java。根据注释修改相应代码。结合参考代码回答使用DAO模式有什么好处?
使用数组实现
使用列表实现
- 由代码演示的结果可知,尽管在使用时,我们可能用不同的数据存储方式去存,不同的实现方式。但正是因为DAO模式的隔离代业务逻辑和数据访问的作用,在调用时,此时体现DAO模式隔离之后代码的复用性,都是调用同样的业务逻辑代码,无需去考虑具体的数据类型所要调用对应的实现方法。