对拦截器的小小理解

对于初学架构的 [color=red]“小白”[/color]来讲,拦截器绝对是一把需要掌握的[color=red]“利器”[/color]。那么自己从以下几个方面,谈谈对拦截器的小小思考。
拦截器的方法在Action执行前或执行后自动执行,从而将通用的操作动态地插入到Action执行的前后,这样的目的是利于系统的耦合。
拦截器的[color=red][b]实现原理[/b][/color]和 [color=red]Servlet[/color] 过滤器的实现原理一样,以链式方式执行,对真正想要执行的方法(这里指action类的execute())进行拦截。 [color=red] 首先[/color]执行action配置的拦截器,[color=red]其次[/color],在action类中的execute()被执行后,拦截器再次被执行。
拦截器的工作方式如下图所示:
[img]http://dl2.iteye.com/upload/attachment/0109/9416/2ac7f18c-115e-3e9b-a7e0-b589acb3b81e.png[/img]
拦截器的使用步骤:
1.在Struts.xml配置文件定义一个拦截器,只需要使用<interceptor>元素指定拦截器类与拦截明。[color=red]语法格式为:[/color]
<interceptors>
<interceptor name="InterceptorName" class="InterceptorClass"/>
</interceptors>
2.使用拦截器,完成配置后,就可以用该拦截器拦截Action提交的申请了,拦截行为将会在执行Action中的execute()方法之前触发。在Action中使用触发器的配置语法是设置<interceptor-ref>[color=red]语法格式为:[/color]
<interceptor-ref name="InterceptorName"></interceptor-ref>
3.实现拦截器类,[color=red]语法格式为:[/color]
public class 拦截器名称 extends AbstractInterceptor{
//intercept该方法实现拦截的动作
//拦截器继承AbstractInterceptor类,来实现
public String intercept(ActionInvocation arg0) throws Exception {
System.out.println("拦截器开始运行....");
String resultString=arg0.invoke();
System.out.println("拦截器已经结束....");
return resultString;

}
}
对于拦截器“小白”的我,了解的很少,希望大家凑合看吧! :D :D ,同时,自己写博客的目的在于:在写作中升华理解,渐渐告别“小白”,嘿嘿!!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值