【新版】系统架构设计师 - 软件架构设计<轻量级架构>

在这里插入图片描述

个人总结,仅供参考,欢迎加好友一起讨论

文章目录

  • 架构 - 软件架构设计<轻量级架构>
  • 考点摘要
  • 轻量级架构
    • 表示层
    • 业务逻辑层
    • 持久层
    • 数据库
  • SSH与SSM
  • Hibernate与Mybatis

架构 - 软件架构设计<轻量级架构>

考点摘要

  • 基本概念(★)
  • SSH(★★)
  • SSM(★★)

轻量级架构

表示层

用户界面的逻辑位于最顶层。表现层负责把用户要求的业务逻辑处理结果以可视化的友好的方式返回给用户,并提供接受用户命令的接口和表现层页面控制逻辑的代码。

业务逻辑层

业务逻辑层负责处理问题领域的业务规则和根据用户需求进行的业务处理以满足用户的功能需求。通常情况下,业务逻辑层处理使用的实体对象由持久层提供。

持久层

数据通过持久层进行持久化。所谓持久化,即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。

持久层的设计,使得业务逻辑层只需要负责业务逻辑的实现,而把对数据的操作交给了持久层。持久层对数据及对数据操作的封装有以下几个优点︰

  1. 屏蔽数据库平台的变化对业务逻辑层的影响。当数据库变化时,只需修改持久层操作数据库的代码,而持久层提供给业务逻辑的对象模型没有变化,从而避免了业务逻辑的修改。
  2. 通过持久层的封装处理,可以在持久层实现支持多种数据库平台,而对业务逻辑层提供统一的接口。
  3. 代码可重用性高,能够完成所有的数据库访问操作。

通过持久层的设计,将复杂的业务逻辑和数据逻辑分离,降低系统的耦合程度,从而在开发时更明确地进行分工,维护工作也更容易进行,系统的体系结构也变得更加清晰。

数据库

数据存储。

SSH与SSM

SSH概念:

SSH指的是Struts2(做前端控制器),Spring(管理各层的组件),Hibernate(负责持久化层)。

SSM概念:

SSM指的是SpringMVC(做前端控制器),Spring(管理各层的组件),Mybatis(负责持久化层)。

所在分层 SSH SSM
页面层(View) JSP JSP
控制器层(Controller) Struts2 SpringMVC
业务层(Service) Java Java
持久层(Dao) Hibernate Mybatis
数据库层(DB) 各种数据库 各种数据库
组件管理层(Bean) Spring Spring

Hibernate与Mybatis

  • 开发方面:Hibernate开发中,SQL语句已经被封装,直接可以使用;Mybatis属于半自动化,SQL需要手工完成。
  • SQL优化方面:对复杂查询的SQL语句进行人工调优的时候,Mybatis更方便。
  • 可移植性方面:Hibernate使用时自动生成相应的sql语句,因此具备良好的数据库移植性,而Mybatis中手动编写的SQL语句需要针对不同厂商的数据库进行修改。

你可能感兴趣的:(软考,-,系统架构设计师,软考,系统架构设计师)