zoukankan      html  css  js  c++  java
  • 【SSH】——梳理三大框架

    【前言】

            去年软考,从System.out.println("Hello World!")开始,小编也算是进入java的世界了。转战java以后,虽然仍旧在学习.NET的知识,但越学越发现语言都是相通的。单从java的语法基础来看,他和C#语法就很类似,经常让人觉得傻傻分不清楚。OO的思想就更是这样了,抽象、继承、封装,这些东西更是不被语言所影响。最近接触到SSH框架,本着“囫囵吞枣”的学习理念,先做了两个小项目,才进行了理论性的学习。理论学习了一段时间了,还是觉得总体思路上有点乱,因此停下来,整理下思路。


    【SSH】

            SSH,即Struts+Hibernate+Spring的一个集成框架。单从分层来看,ssh可以看作一个三层或者四层的架构,即Web(UI)层、业务逻辑层、(Dao层)、持久化层。如图:


         

    那么具体每个框架的作用是什么呢?

            Struts  ——显示层(UI Layer/Presentation Layer)

            Spring——业务逻辑层(Business Layer)

            Hibernate——持久化层(Persistence Layer)



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


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


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


          


    【思维导图】

              

          Struts,是整个系统的基础架构,实现了MVC的分离,主要用在MVC的视图层,控制转发。

          Hibernate对JDBC进行了封装,使得开发人员可以用面向对象等程序思维来操纵数据库,如Hibernate提供自动建表,我们只需要编写类,而不需要关心表的内部结构和生成过程。

          Spring是一个轻量级的容器框架,可以用来管理Struts和Hibernate。spring可以管理类与类之间的依赖关系,实现控制反转,而不需要在代码里操作。另外,AOP可以使业务逻辑更加清晰,团队开发的分工变得简单可行,也大大了解耦了。

          详细的介绍参加下面的思维导图。由于空间原因,细节部分就不再展示了。


  • 相关阅读:
    以《淘宝网》为例,描绘质量属性的六个常见属性场景
    架构漫谈感想
    架构师的工作流程
    阅读笔记六
    代码生成器的步骤
    hibernate中*.hbm.xml配置文件的各种映射关系配置方法(多对一,多对多)
    hibernate错误:Caused by: org.hibernate.MappingException: Repeated column in mapping for entity: com.zxq.DIYSharing.domain.Topic column: topicid (should be mapped with insert="false" update="false")
    MVC模式在Java Web应用程序中的实例
    MVC框架
    设计模式
  • 原文地址:https://www.cnblogs.com/saixing/p/6730260.html
Copyright © 2011-2022 走看看