SSH理论学习总结

SSH是Struts+Spring+Hibernate的集成框架,用于构建灵活的web应用。它分为表示层、业务逻辑层、数据持久层和域模块层。Struts负责MVC模式,Spring作为IoC容器管理对象,Hibernate处理数据持久化。SSH通过解耦各层,提高系统可复用性和开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习了SSH的基础知识知道了,SSH并不是一个框架,而是多个框架(struts+spring+hibernate)的集成框架。是目前交流行的一种web应用程序开源集成框架,用于构建灵活、已于扩展的多层次web应用程序。
集成的SSH框架分为四层系统职责:(1)表示层;(2)业务逻辑层;(3)数据持久层;(4)域模块层(实体层)。Struts作为系统的整体基础架构,负责MVC(批注1)的分离,在Struts框架的模型部分,控制业务跳转。利用Hibernate框架对持久层提供支持。Spring一方面作为一个轻量级的IoC(批注2)容器,复测查找、定位、创建和管理对象及对象之间的依赖关系,另一方面能使Struts和Hiberate更好的工作。
批注1:MVC是一种使用MVC(Model View Controller模型-视图-控制器)设计创建web应用程序的模式:
(1)Model(模型)表示应用程序核心(数据库记录列表);是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
(2)View(视图)显示数据(数据库记录);是应用程序中处理数据显示的部分。通常是图示依据模型数据创建的。
(3)Controller(控制器)处理输入(写入数据库记录);是应用程序中处理用户交互的部分。通常控制器负责从仕途读取数据,控制用户输入,并向模型发送数据。
批注2:IoC是控制反转(Inversion of Control,的英文缩写)是框架的重要特征,并非面向对象编程的专用术语。它与依赖注入和依赖查找并没有关系。

SSH构建系统的业务基本流程:
1、在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接受相应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派相应的Action处理。
2、在业务层中,管理服务组建的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理组件完成业务逻辑,并提供事物处理、缓冲池等容器组件以提升系统性能和驳岸增数据的完整性。
3、在持久层中,则依赖于Hibernate的对象话映射和数据库交互,处理DAO组建请求的数据,并返回处理结果。
采用SSH开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久的分离。这样无论前段如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。

一、Spring(负责表面层的显示)
1、Spring 的简单理解:Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
2、Spirng的特征:IoC容器;轻量级;面向切面;促进其他框架;面向接口;所有的这些特征能够编写更干净、更可管理、并且更易于测试的代码。
3、Spring的以上特征是的开发人员使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可预测性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整结局方案方面是独一无二的。Spring提供了唯一的数据访问抽象,包括简单和有效的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事物提供一个一致的变成模型。

二、STRUTS(负责对数据库进行操作)
Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。它把Servlet、JSP、自定义标签和信息资源整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。

三、Hibernate(负责数据库数据的持久化)
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,是的Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE框架中取代CMP,完成数据库化的重任。Hibernate可以在应用EJB和J2EE框架中取代CMP,完成数据持久化的重任。映射简单。

SSH三者的作用:
一、Struts:
在项目中主要起到控制作用,用于web层(视图层和控制层)
Struts本身就是MVC结构,使用Struts间接的也使用了MVC结构,使项目更清晰,分工更明细。
二、Spring:
它是一个全方位的整合框架,在项目中对hibernate和struts整合,结局了层与层之间的耦合问题。它的作用贯穿了中间层,将web层,service层,DAO层及PO无缝整合。
三、Hibernate:
应用于数据持久化层,是对JDBC的轻量级封装。是一种对象、关系的映射工具,提供了从Java类到数据表的映射,也提供了到数据查询和恢复等机制。减少了数据访问的复杂度。把对数据库的直接操作,转换为对持久对象的操作。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值