Entity层:
- 用于存放实体类,与数据库中的属性值基本一致,实现getter和setter方法。
- 一般数据库一张表对应一个实体类,类属性同表字段一一对应。
DAO(Data Access Object)层:
- 对数据库进行数据持久化操作,它的方法语句是直接针对数据库操作的,主要实现一些数据的增删改查。
- 核心思想是把数据库封装一下,让与数据库的交道看起来像在和一个对象打交道,这个对象通常就是DAO。当我们操作这个对象的时候,这个对象会自动产生SQL语句来和数据库进行交互,我们就只需要使用DAO就行了。
- 通常我们在DAO层里面写接口,里面有与数据打交道的方法。
- SQL语句通常写在mapper文件里。
- DAO层的数据源配置以及相关的有关数据库连接的参数都在Spring配置文件中进行配置。
Service层:
- 给Controller层的类提供接口进行调用。一般就是自己写的方法封装起来,就是简单声明一下,具体实现在serviceImpl中。这样我们就可以在应用中调用service接口进行业务处理。Service层业务实现,具体调用到已经定义的DAO的接口
Controller层:
- 负责业务模块流程的控制。
- 需要调用Service层的接口来控制业务流程。Controller层通过接收前端H5或者App传过来的参数进行业务操作,再将处理结果返回到前端。
- 控制的配置同样在Spring配置文件中配置。
写法顺序:
1.数据库表
2.实体层
3.DAO层写接口
4.Mapper层写和DAO层对应的映射规则,即SQL和POJO的映射规则。其中<select>元素定义的resultType指向实体层的表;
5.Service层
6.ServiceImpl
7.Controller层
Note:Service层应该既调用DAO层的接口,接收DAO层返回的数据,又要提供接口给Controller层的类来进行调用。