zoukankan      html  css  js  c++  java
  • SSH框架总结

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

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

    Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依赖关系,另一方面能使StrutsHibernate更好地工作。

    SSH构建系统的基本业务流程是:

    1在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts.xml)将Action接收到的Request委派给相应的Action处理。

    2在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。

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

    采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。

    下面我们再详细看一下组成SSH的这三个框架

    一、Spring

    1、什么是Spring?

    Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

    2、Spring的特性

    3、为什么使用Spring?

    Spring的以上特性使得开发人员使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何java应用都可以从Spring中受益。

    二、Struts

    1、什么是Struts?

    它通过采用 Java Servlet/JSP 技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架。

    2、Struts 2的核心构成

    什么是struts2

     struts2 是一个按MVC模式设计放入web层框架,其实它就是一个servlet。这个servlet命名为ActionServlet,或者是它的
    一个子类。

    6、为什么使用Struts?

    实现了MVC模式,层次结构清晰,使程序员只需关注业务逻辑的实现。

    三、Hibernate

    1、什么是Hibernate?

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

    2、Hibernate核心构成

     

    3、Hibernate(在SSH框架中)基本执行流程

     

    为什么使用Hibernate?

    Hibernate是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作,将软件开发人员从大量相同的数据持久层相关编程工作中解放出来,使开发更对象化了。

    Hibernate操作的是纯粹的(pojo)java类,没有实现任何接口,没有侵入性。所以说它是一个轻量级框架。

  • 相关阅读:
    [转载]安装SQL Server 2008 R2遇到“...Setup has stopped working.”
    WPF验证错误显示
    说一下我对Mvvm模式的理解
    [转载]C#深拷贝的方法
    Windows Phone 开发(一):入门指南 — 安装开发环境:Windows Phone SDK
    DateTime.ToString() Patterns
    Log4net 根据日志类别保存到不同的文件,并按照日期生成不同文件名称
    使用Visual Studio 2010进行UI自动化测试
    WPF触发器之数据触发器(A)
    Getting The imported project "C:\Program Files\MSBuild\Microsoft\Silverlight for Phone\v4.0\Microsoft.Silverlight..Overrides.targets" was not found
  • 原文地址:https://www.cnblogs.com/yncx/p/5990925.html
Copyright © 2011-2022 走看看