基于Struts2的核心技术

本文详细介绍了Struts2框架中请求的处理流程,包括FilterDispatcher的角色与工作原理、ActionProxy如何利用代理模式调用Action类,以及在调用过程中涉及的拦截器等关键组件。

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

关于struts2的相关问题

1.1.首先当前端进行请求时,这个请求经过一系列的过滤器(Filter)接着FilterDispatcher被调用

1.2FilterDispatcher询问ActionMapper来决定这个请求是否需要调用某个Action { FilterDispatcher是控制器的核心,就是mvc中c控制层的核心。}

       FilterDispatcher的工作原理

   1.1.1    FilterDispatcher进行初始化并启用核心doFilter

1.1.2如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy

ActionProxy利用代理模式实现调用 

1.3 ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类 ,这里,我们一般是从struts.xml配置中读取。

1.4通过相应请求找到相应类,在找到相应的方法,进行调用,返回结果,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。

1.5

  1. <struts>  
  2.     <package name="test"extends="struts-default">  
  3. //自定义拦截器
  4.      <interceptors>  
  5.       <interceptor name="abc"class ="ceshi.AuthorizationInterceptor"/>  
  6.     </interceptors>  
  7.         <action name="TestLogger"class="vaannila.TestLoggerAction">  
  8.            <interceptor-refnameinterceptor-refname="abc"/>  
  9.            <result name="success">/success.jsp</result>  
  10.            </action>  
  11.     </package>  
  12. </struts>
  13.   一旦Action执行完毕,根据struts.xml中的配置找到对应的返回结果
  14. 因为Struts2具有强大的拦截功能,因此主要是在拦截方面  当然,现在的Spring Aop也可以实现
  15. 功能拦截

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值