1.针对面向接口编程的好处UserDao接口可以有多个不同的实现类,这些类可以分别操作Oracle,DB2,MySql等等不同的数据库,那么当项目原来的数据库发生变化时,只需要调整实现类,可使得项目代码整体改动最小
2.作为直接操作数据库的对象,UserDao不应该直接暴露给用户,而是应该在其上加上service层,service层对象既可以选择不同的
UserDao的实现类,也可以在执行DAO操作前后加上一些动作,比如权限检查,日志记录等,这些事不属于DAO部分。
3.DAO层完成的是底层的数据操作,service层则完成纯粹的业务逻辑,service层中的数据操作部分是通过注入的DAO完成的