SSH框架流程详解

 

解图:

  由图可见,有三个框架{

      . Struts_2    . Spring    . Hibernate

   }

框架 作用 本质 同等于
Struts_2 实现MVC / 控制、跳转 过滤器(Filter) 拦路虎
Spring 托管所有Class类的实例并提供实例 监听器(Listener) 监视鹰
Hibernate 访问数据库 JDBC 耕地牛

  

  通过表格,可以很清楚的知道,当有访客来访时,Struts拦路虎就,会对访客进行拦截,随后,Struts拦路虎就去查找访客要访问的人是否存在记录中。而同时,

Spring监视鹰看见有情况,就飞过去于Struts拦路虎会合。Spring监视鹰就了解到了有访客来访,立即从记录中调出访客要找的人的信息给Struts拦路虎。Struts

路虎看过该人的信息后确认无误,访客要找的人存在,这才给请访客放行。{ Hibernate耕地牛是Spring监视鹰来管理的 }

  言归正传,看图。 

    . 初始,客户端发送一个请求到服务器

    ②. 服务器开始处理客户端发送过来的请求,Struts过滤器开始运作

    ③. Struts过滤器从struts.xml这份配置文件中查找客户端要访问的东西是否存在

    {若客户端要访问的东西不存在,则给出一个错误页面;}  

    ... ...

    ④. Struts过滤器从struts.xml配置文件中找到了客户端要访问的东西(Action),Struts过滤器读取struts.xml配置文件时,Spring通过Struts写的实例bean的id,注入

    一个Action类实例给Struts,这个时候就去到了action_class类

     ⑤. 这时,action类中定义着一个Service层的接口,Spring通调用了接口属性对应的set方法,注入了一个Service层接口实现类的实例给Action类

    ⑥. 这时,Service类中定义着一个Dao层的接口,同样,Spring通过调用该接口对应的set方法,注入了一个Dao层接口实现类的实例给Service类

       ⑦. Dao层通过Hibernate的SessionFactory接口提供的方法从数据库中获取到数据                

       ⑧. Service层通过Dao层,调用Dao层的方法拿到从数据库中获取到的数据,进行一系列的业务逻辑的流程

          ⑨. Action层通过Service层的方法,获取数据

         ⑩. jsp页面调用Action类中属性的get方法,将数据呈现出来 

      

原文地址:https://www.cnblogs.com/LiJinfu/p/5844562.html