美文网首页读书
架构设计之:SSH

架构设计之:SSH

作者: 简书的猪队友 | 来源:发表于2022-05-18 10:50 被阅读0次

SSH时代

● Struts解决接入及表示层
● Spring解决业务服务、事务处理、会话管理问题
● Hibernate解决数据存储问题

SSH使用MVC分层设计

● 表示层:处理HTTP请求的接入层
● 业务逻辑层:核心业务逻辑的实现层
● 数据持久层:数据处理

流程

  1. 表示层的Struts MVC:用ActionServlet的方式做web层接入,并把对应的请求流转到service
  2. 业务逻辑层的Spring:做业务逻辑处理
  3. 数据持久层Hibernate:生成生成对应的DAO,即将对应的领域模型转化为数据模型
  4. Hibernate管理数据源和数据连接池,最后落到数据库
  5. 数据处理结果返回业务逻辑层
  6. 业务逻辑层进行部分封装后返回表示层
  7. Struts里用JSP页面渲染方式,再返回给HTML页面

特点

● 始终围绕模型的业务对象,该对象在核心的业务逻辑层中,其会转为数据层的Data Object存储对象,最终落到数据库。
● 不管业务逻辑如何变化,只要DAO接口不变,数据库的表结构的设计完全可以脱离于业务逻辑层去实现。

不足

● Hibernate方便了ORM(object relation database mapping)之间的转化,可以很方便的定义一个JavaBean对象就能完成数据库模型的映射,但较难操控复杂业务对应的SQL语句。面向对象的过度封装导致一些复杂业务的数据库操作变得很麻烦。
● Hebernate对于java模型处理的状态会跟数据库处理状态做绑定,也就是任何对Hibernate对象的set操作都会映射到数据库里,这对于程序员来说就要考虑和评估get set操作对数据库带来的影响。
● Struts表示层过于复杂,每个web请求都要对应一个ActionServlet类去实现,并且最终还是采用JSP渲染的方式,这不符合前后端分离架构思想。

相关文章

  • 架构设计之:SSH

    SSH时代 ● Struts解决接入及表示层● Spring解决业务服务、事务处理、会话管理问题● Hiberna...

  • iOS架构初探(初级 MVC/MVP/MVVM)

    目录: 序言 一、架构的基础 二、架构之MVC 三、架构之MVP 四、架构之MVVM 序言: 架构其实是一个设计上...

  • apollo架构图

    一、Apollo基本概念 二、Apollo架构设计之客户端 三、Apollo架构设计之服务端 四、高可用设计

  • web端页面设计之信息架构

    web端页面设计之信息架构

  • 二、设计模式总览及工厂模式详解

    二、架构师内功心法之设计模式 2.架构师内功心法之设计模式 2.1.课程目标 1、通过对本章内容的学习,了解设计模...

  • 综合架构之SSH服务

    远程服务概念说明远程服务连接原理远程服务连接方式远程服务配置文件远程访问防范入侵方案 远程服务概念说明: teln...

  • 基于中台思想的物流系统设计

    设计架构说明1 设计架构说明2 设计架构说明3 设计架构说明4

  • SpringCloud基本概念

    Spring Cloud 基本概念 网站架构演变过程 传统架构 传统的 SSM、SSH 架构,分为三层架构Web控...

  • 设计模式之合成模式

    @(架构之路之设计模式代码) 设计模式之合成模式 欢迎关注作者简书csdn传送门 [TOC]   合成模式属于对象...

  • 设计模式之命令模式

    @(架构之路之设计模式代码) 设计模式之命令模式 欢迎关注作者简书csdn传送门 [TOC] 介绍   命令模式属...

网友评论

    本文标题:架构设计之:SSH

    本文链接:https://www.haomeiwen.com/subject/phtaurtx.html