本文简单记录了一下自己对java项目各个层的理解。
(清理笔记,hhh)
新版编辑器既好用又不好用,哎,第一次发布的序号都被打乱了。
参考:
作者:码农BookSea
原文链接:DAO层和Service层的究极理解--这波我在大气层_码农BookSea的博客-CSDN博客_dao层和service层
目录
1.mybatis
2.controller层
3.Dao层
4.service层
5.实体类
6.util层
1.mybatis
mybatis要有mapper
2.controller层
- controller 是处理前端请求的。
- controller 负责请求转发,接收页面传过来的参数,传给service处理,接到返回值,再传给页面。
3.Dao层
- Dao层,叫数据访问层,全称为data access object,属于一种比较底的层,进行一些比较基础的操作,具体到对于某个表的增删改查,也就是说某个DAO一定是和数据库的某一张表一一对应的,其中封装了增删改查基本操作。
- DAO只做原子操作,无论多么复杂的查询,DAO只是封装增删改查。至于增删改查如何去实现一个功能,DAO是不管的。
- mapper,是mybatis操作数据库的那一层,就是dao层。
4.service层
- service层,叫服务层,被称为服务,粗略的理解就是对于一个或多个Dao进行的再次封装,封装成一个服务。
5.实体类
有的写成pojo,model,domain,entity
6.util层
- 工具类,用来封装相应的方法,然后将其放在对应的util包下,使用的时候直接调用就可以了。
比如:日期转换util,http请求等相关的工具类。
⏰⏰⏰ TIP:
DAO面向表,Service面向业务。后端开发时先数据库设计出所有表,然后对每一张表设计出Dao层,然后根据具体的业务逻辑进一步将DAO层封装成一个Service层,对外提供一个服务。