Struts2 的工作流程

本文详细介绍了Struts2框架的工作原理及其流程。从MVC设计模式出发,解释了Struts2如何通过DispatchFilter、ActionMapper等组件实现请求处理。并通过简单步骤展示了请求从发起到返回的整个过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Struts2工作原理及流程

     Struts2框架的基本思想是采用MVC设计模式,即将应用设计成模型(Model)、视图(View)和控制器(Control)三个部分;

     那么Struts2框架中是如何实现MVC模式的呢?控制部分由DispatchFilter承担,模型部分是由一系列的拦截器(Interceptors)、Action组件和ActionContext组件组成,视图组件则是由Result组件组成;

那么Struts2框架是怎么工作的呢?

     如当我们在浏览器的地址栏中输入:http://localhost:8080/Struts/TestMvc/add.action,浏览器就会把这个请求发送给tomcat,tomcat接收到这个请求后,会检查一下应该交给哪个web程序处理,现在是交给Struts去处理,然后Struts会去参考此程序下的配置文件web.xml,在web.xml中找到过滤器(Filter),如(ActionContextCleanUp、其他过滤器(SiteMesh等)、 FilterDispatcher),注意这里是有顺序的,先ActionContextCleanUp,再其他过滤器(SiteMesh等)、最后到FilterDispatcher;

     FilterDispatcher是控制器的核心,就是mvc中c控制层的核心,FilterDispatcher进行初始化并启用核心doFilter。FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action, 如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy ,ActionProxy通过struts.xml询问框架的配置文件,找到需要调用的Action类和方法来处理这请求;

    Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面,最后返回HTTP响应到客户端浏览器

 

  其实用最简单的七个步骤:

  1:客户端在浏览器中输入一个url地址

  2:这个url请求通过http协议发送给tomcat

  3:tomcat根据url找到对应项目里面的web.xml文件

  4:在web.xml里面会发现有struts2的配置

  5:然后会找到struts2对应的struts.xml配置文件

  6:根据url解析struts.xml配置文件就会找到对应的class

  7:调用完class返回一个结果result,根据struts.xml返回到对应的jsp

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值