Dao(Data Access Object):数据持久化层

       通常我们在DAO层里面写接口,里面有与数据打交道的方法。SQL语句通常写在mapper文件里面的。

Service:业务层/服务层

       服务是一个相对独立的功能模块,主要负责业务逻辑应用设计。所有的内部的业务逻辑都会放在这里处理,比如用户的增删改查,或者发送个验证码或邮件,或者做一个抽奖活动等等等等,都会在Service中进行,当然,业务离肯定是离不开数据的支持,因此Dao层是必不可少的;

Controller:业务控制层

       业务控制,就是控制业务层Service的,它的作用主要是架起了外界与业务层沟通的桥梁,移动端,前端在调用接口访问相关业务时,都会通过Controller,由Controller去调相关的业务层代码并把数据返回给移动端和前端;

Mapper

访问数据库,向数据库发送 SQL 完成数据库操作

总之,这4种代表了服务端接口的 4 层,第一层是控制层(controller),负责接口请求/响应的控制,调用第二层业务逻辑层(service 一般分为接口和实现),完成具体业务功能,它会调用第三层数据持久层 persistence(mapper)的逻辑,作用是访问数据库,向数据库发送 SQL 完成数据库操作。第四层是数据模型层 domain,保存着与数据库表所对应的结构体。

controller相当于饭店里面的菜单,service相当于服务员,mapper相当于厨房种的小工,dao相当于厨师。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐