流程图
Controller:控制器
业务模块流程的控制,不同的业务流程有不同的控制器
负责请求转发,接收页面过来的参数,传给service处理,接到返回值,并再次传给页面
- 控制处理前端请求和响应,与前端进行交互,给前端提供接口
- 调用Service层(定义的接口)
- 如果只是简单增删可以调用Mapper(不推荐)
Service:服务
相对独立,负责业务逻辑(功能)的设计,是一个接口类
ServiceImpl:服务实现
对Service接口的实现,调用Mapper
把Service类设计成一个接口,使控制层只依赖这个接口,于是就有了controller+service+serviceImpl;这样,当某天这个应用要跑在其它数据库上时,就而只需要增加一个serviceImpl类。 这就是service+serviceImpl套路产生的背景
Mapper:(DAO)
访问数据库,对数据库进行操作,提供接口给Service层
- 当sql语句发生变化更改时,我们可以只修改对应的XML文件,而无需再修改Mapper,这样每次更改sql语句时,代码就可以不用再次重新编译!
- 直接与数据库打交道(执行SQL语句),接口提供给service层
参考链接:
1.https://my.oschina.net/HuQingmiao/blog/636161
2.https://blog.csdn.net/bandaoyu/article/details/104759030/