跃界星图

3 层次式架构的设计理论与实践 · 3.1 层次式架构概述

层次式架构的一般组成(表现层、中间层、数据访问层和数据层)

软考学习笔记
知识点 2/2
层次式架构的一般组成(表现层、中间层、数据访问层和数据层)
重要等级: (3星 - 非常重要)
建议学习时长: 10分钟

典型四层架构模型

大多数企业级应用采用分层架构,通常划分为四个逻辑层次。这种划分有助于实现关注点分离,使系统结构更清晰,易于开发和维护。请求从顶部的表现层开始,逐层向下调用,直到数据层。

Layer 1 用户请求 (Request) 表现层 中间层 (业务层) 数据访问层 (持久层) 数据层 封闭 封闭 封闭
.yjxt-diagram-legend { list-style: none; padding-left: 0; margin-top: 15px; font-size: 14px; color: #666; text-align: center; } .yjxt-diagram-legend li { display: inline-flex; align-items: center; margin-bottom: 5px; } .yjxt-diagram-legend .line-style { display: inline-block; width: 30px; height: 2px; margin-right: 10px; } .yjxt-diagram-legend .line-style.solid { background-color: #1890ff; }
  • 调用/数据流

各层职责与技术映射

层级 主要职责 常见技术/模式 MVC中对应角色
表现层
(Presentation)
负责接收用户请求,与用户交互。进行输入/输出的检查与控制,处理页面跳转,并向用户呈现最终结果。
  • JSP, Servlet, Struts, Spring MVC
  • HTML, CSS, JavaScript
视图 (View)控制器 (Controller)
中间层/业务层
(Business)
实现系统的核心业务逻辑。根据表现层的请求,调用持久层获取数据,完成具体的业务处理和计算。
  • Service, EJB (Session Bean)
  • Spring (Core, AOP)
模型 (Model) 的业务逻辑部分
数据访问层/持久层
(Persistence)
负责数据的持久化存储。提供对数据源的访问接口(如增删改查),将业务对象与数据库记录进行映射。
  • DAO, EJB (Entity Bean)
  • Hibernate, MyBatis, JDBC
模型 (Model) 的数据访问部分
数据层
(Data)
物理上存储业务数据的介质。
  • MySQL, Oracle, SQL Server
  • 文件系统, NoSQL数据库
(MVC模式不直接包含此层)

知识点总结与学习建议

知识点总结

  • 典型的层次式架构自顶向下分为表现层、中间层(业务层)、数据访问层(持久层)和数据层
  • 表现层是用户入口,负责交互和展示,常采用MVC模式,其中JSP/HTML是View,Servlet/Struts是Controller。
  • 中间层是系统核心,封装业务规则和逻辑,是连接表现层和数据访问层的桥梁。
  • 数据访问层专注于数据持久化,通过DAO等模式将上层业务逻辑与底层数据存储技术解耦。
  • 数据层是物理存储,是所有操作的最终目的地。
  • 三层C/S架构设计的关键在于各层之间的通信效率,需要慎重考虑通信方法、频度和数据量。

学习建议

  • 重点记忆:必须牢记每一层的核心职责,这是解答案例分析题的基础。例如,"处理用户请求" -> 表现层,"实现业务逻辑" -> 中间层,"与数据库交互" -> 数据访问层。
  • 技术映射:将常见的Java EE框架(如Struts, Spring, Hibernate/MyBatis)与对应的层次建立强关联,考试中会直接考察这种映射关系。
  • 理解MVC与分层关系:明确MVC主要是一种用于构建表现层的模式,它本身可以看作是表现层内部的进一步分层。
  • 案例分析应用:在做案例题时,要能够根据题目描述的功能模块(如“统一身份认证模块”、“共享资源管理模块”),判断它们应属于哪个逻辑层次,并分析其是有状态还是无状态的。
本页内容由 跃界星图软考学习库 整理,仅供个人备考学习。