单体架构 三层架构
三层架构是软件系统的架构模式,将软件划分为表示层、业务逻辑层和数据访问层,使得开发“高内聚、低耦合”。
一、三层架构
1. 表示层 Web
用于显示数据和接收数据,为用户提供界面,
写在 web 包中,
注意:
表示层可以按 MVC 开发模式划分,分为三个小层:
- 模型
- 视图
- 控制
2. 业务逻辑层 Service
用于处理业务逻辑,
写在 service 包中,
组合数据访问层中的简单方法,实现复杂的业务逻辑操作,
3. 数据访问层 DAO
又称持久层,
用于对数据进行处理,
写在 dao 包中,
定义了对于数据库的基本增删改查操作
二、优缺点
1. 优点
- “高内聚、低耦合”,降低层与层之间的依赖
- 各层相互独立,方便开发与测试,方便维护
- 利于代码复用
2. 缺点
- 由于中间层的介入,降低了系统的性能
- 增加了代码量
三、三层架构与MVC
MVC 是客户端的设计模式,无需考虑数据持久性的问题,只需要解决业务逻辑、界面、交互即可
其中,
- 业务逻辑由 Model 负责
- 界面由 View 负责
- 交互由 Controller 负责
三层架构是软件系统的架构模式,在宏观上对软件系统进行了拆分
三层架构 + MVC:
- DAO,持久层
- Service,业务逻辑层
- Web,表示层
- Model,模型
- View,视图
- Controller,控制器