我们先来看一下java文件分层
UserDao是操作数据库的接口 以及相关实体类
UserService是业务逻辑层
首先我们来看这个service层里的方法
在这里的userDao是我们显式指定了 是用什么数据库的dao
但是这个存在一个问题 就是如果客户端使用的是 别的数据库
那么你作为程序员需要去改源代码 这一点违反了开闭原则
在这里我们使用非指定的userDao数据库
而是将选择权交给了 客户端 去进行选择
在这里可以选择new一个什么数据库对象
2021/2/1更新
我们用spring容器来实现上面那个例子
将各个类进行注册
需要修改数据库的时候可以进行配置文件的修改
不需要再修改代码了