关于struts的工作原理和流程简介

原创 2007年09月19日 10:11:00

Struts工作原理和流程简介

MVC简介:

       Model—模型:负责系统的状态和业务逻辑

       View—视图:负责系统的视图呈现

       Controller—控制: 负责系统的逻辑控制

 

核心的原则:

       Jsp页面不出现java代码,servlet不出现html的东西。

 

传统的MVC架构:

       JSPèVIEW

       ServletèController

       JavaBeanèModel

 

传统的流程图:

       客户端的Request请求到达servlet,获取用户输入,setmodel中,model负责取值也业务逻辑,然后由viewget数据更新view,发送到client

 

Struts架构:

       Jsp+struts标签库 è View

      

       ActionBean          

ActionFormBean            Model

 

ActionServlet  

       AactionMapping              Controller

 

Struts流程图:

      

Controller作为接受所有客户端请求的入口点,由ActionServlet来决定需要那个动作类来执行相应的操作,同时通知ActionFormBean来封装用户的表单输入,同时提交给ActionBean执行相应的业务逻辑,通过ActionMapping来决定需要反馈给Client什么。

 

注意的事情:

       Struts的模型主要有Action Bean ActionForm Bean Action中封装了简单的逻辑操作。

较为复杂的逻辑放在JavaBean或者EJB中来完成,然后在Action中调用,因此Action是解决“做什么”,由其他的组件如(JavaBean)来解决“怎么做”的问题。

       ActionForm封装了用户的表单输入,因此Action不用和表单交互,直接和ActionForm交互就可以了!

 

       Struts标签和ActionForm的元素之间一一映射。

 

Struts的工作流程:

 

浏览器:Client

Struts-config.xml

控制器:ActionServlet

模型:Model

视图:View—jsp

Taglib

ApplicationResourses.

properties

Action

ActionForm

      

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

启动Tomcat

初始化ActionServlet,读取s-c,将action存于AM

ActionMapping

返回ActionForward,返回给客户端

ActionForm

是否要验证,根据s-c

Action,调用execute()

 

 

 

 

 

 

 

 

 

 

 

 


<action-mappings >

    <action

      attribute="helloForm"   //

      input="/form/hello.jsp" // 失败后要跳转的页面

      name="helloForm" // 要传给ActionActionForm

      path="/hello"    //指定了访问Action的路径

      scope="request" //  这个actionform的有效范围

      validate = "false"  // 是否验证

      type="com.hicc.struts.action.HelloAction" />

  </action-mappings>

 

Struts 框架会自动把表单中的数据封装导ActionForm中,其属性和表单中的属性一一对应起来。Actionform提供了reset() validate() 的方法。

       Action只需重载execute()方法,在这个方法中实现所有的数据校验和业务逻辑。

 

 由于csdn不是很支持word的格式

我又懒得老是切图啦。

就直接整了个大图!大家看!

Struts 2详细工作流程及原理

Struts 2详细工作流程      Struts2工作原理及流程      Struts2框架的基本思想是采用MVC设计模式,即将应用设计成模型(Model)、视图(View)和控制器(Co...
  • liuyinghui523
  • liuyinghui523
  • 2015年09月08日 14:31
  • 4069

Struts2工作原理

Struts2工作原理 Struts2请求响应流程:   在struts2的应用中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller、ActionProxy、Ac...
  • wuwenxiang91322
  • wuwenxiang91322
  • 2013年09月04日 16:18
  • 90884

深入浅出了解Struts的处理流程(有图有真相)

Struts框架在java web开发中很常用。最近我也在逐步摸索和学习。今天就来说说Struts的处理流程。       先上一幅时序图:...
  • xiaoxian8023
  • xiaoxian8023
  • 2013年09月14日 08:11
  • 4071

Struts2的运行流程及其工作原理

Struts2是一套非常优秀的Web应用框架,实现优雅、功能强大、使用简洁。可以说是Struts2是一款非常成熟的MVC架构。 在我们学习Struts2时,最好是先学习它的运行流程、核心概念,从...
  • lijia791541916
  • lijia791541916
  • 2015年12月09日 16:42
  • 3082

Struts基础之工作原理和文件结构

1.工作原理 1.1.工作原理图解 1.1.1.过滤器:用户通过HttpServletRequet发出请求至过滤器,ActionContextCleanUp(可选过滤器主要用于和其他框架进行集成...
  • moHedong
  • moHedong
  • 2016年09月08日 12:12
  • 643

struts2的核心和工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式...
  • laner0515
  • laner0515
  • 2014年05月30日 16:49
  • 353095

springmvc 和struts2的区别?struts2工作原理?

springmvc 和struts2的区别? 机制 :springmvc 的入口是servlet,struts2的入口是filter 性能 : springmvc 会比struts2快一点。sprin...
  • qq_31951571
  • qq_31951571
  • 2015年11月24日 11:03
  • 873

SpringMVC工作原理&执行流程

SpringMVC工作原理&执行流程
  • merrylilili
  • merrylilili
  • 2016年11月01日 20:36
  • 1607

Struts工作原理和Struts内部工作流程:

随着MVC模式的广泛应用,催生了MVC框架的产生。在所有的MVC框架中,出现最早应用最广的就是Struts框架。  Struts环境配置:…。   Struts工作原理和Struts...
  • shipeng22022
  • shipeng22022
  • 2013年02月19日 09:12
  • 662

Struts2工作原理和执行流程图

1、Struts2请求响应流程:   在struts2的应用中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller、ActionProxy、ActionMapp...
  • snow_7
  • snow_7
  • 2016年05月27日 10:38
  • 9151
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于struts的工作原理和流程简介
举报原因:
原因补充:

(最多只允许输入30个字)