我们先来看一下java文件分层
UserDao是操作数据库的接口 以及相关实体类
UserService是业务逻辑层
首先我们来看这个service层里的方法
在这里的userDao是我们显式指定了 是用什么数据库的dao
但是这个存在一个问题 就是如果客户端使用的是 别的数据库
那么你作为程序员需要去改源代码 这一点违反了开闭原则
在这里我们使用非指定的userDao数据库
而是将选择权交给了 客户端 去进行选择
在这里可以选择new一个什么数据库对象
原文:https://www.cnblogs.com/cckong/p/14350451.html