SSH框架

首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源 集成框架,用于构建灵活、易于扩展的多层Web应用程序。


什么是Struts:

struts是开源框架。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。

如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。

什么是Spring:

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。

简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。

什么是Hibernate:

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,

它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使

得Java程序员

可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的

客户端程序使用, 也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的 J2EE

架构中取代CMP, 完成 数据持久化 的重任。


集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层(实体层)。


基本流程:

1、在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts

根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。


2、在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数

据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。


3、在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。

采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这

样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可

复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。


总结:

Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转利用Hibernate框架

对持久层提供支持Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依

赖关系,另一方面能使Struts和Hibernate更好地工作。


Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐