软件架构分层

目前常用的三层构架即:表示层、业务层和数据访问层。

(图片来源于网络)

一、概述

1、表示层:提供用户交互的界面。GUI和Web页面是表示层最典型的两个例子。

2、业务层:也称之为业务逻辑层,用于实现各种业务逻辑。如处理数据验证,根据特定的业务规则和任务来响应特定的行为。

3、数据访问层:也称之为数据持久层,负责存放和管理应用的持久性业务数据。

二、分层架构应遵循的原则

  (1)每个层的代码必须包含可以单独维护的单独文件;

  (2)每个层只能包含属于该层的代码。因此,业务逻辑只能驻留在业务层,表示层只能在表示层,而数据访问逻辑也只能驻留在数据访问层中。

  (3)表示层只能接收来自外部代理的请求,并向外部代理返回响应。

  (4)表示层只能向业务层发送请求,并从业务层接收响应。它不能直接访问数据或数据访问层。

  (5)业务层只能接收来自表示层的请求,并返回对表示层的响应。

  (6)业务层只能向数据层发送请求,并从其接收响应。它不能直接访问数据库。

  (7)数据访问层只能从业务层接收请求并返回响应。它不能发出请求到除了它支持的数据管理系统(DBMS)以外的任何地方。

  (8)每层完全不知道其它层的内部工作原理。例如,业务层可以对数据库一无所知,并且可以不知道或不必关心数据访问对象的内部工作原理,它必须是和表示层无关的,可以不知道或是不必关心表示层是如何处理它的数据的。表示层可以获取数据并构造HTML文档、PDF文档、CSV文件或以某种其它方式处理它,但是这应该与业务层完全无关。

  (9)每层应当可以用具有类似特征的替代组件来交换这个层,使得整体可以继续工作。

三、三层架构图

表示层

  |_______ Controller

       |_______ View

业务层

       |_______ Enity

  |_______ VO

数据访问层

  |_______ Dao

  |_______ Repository

参考资料《Spring Boot 企业级应用开发实战》

猜你喜欢

转载自www.cnblogs.com/hugo01/p/9177554.html