【Struts2】:拦截器实现方法过滤

本文介绍了在Struts2框架中如何实现拦截器对特定方法的过滤,通过继承MethodFilterInterceptor并重写doIntercept方法来定制拦截逻辑。同时,讲解了SetExcludeMethods和SetIncludeMethods方法的使用,以及在struts.xml配置文件中如何指定需要或不需要被拦截的方法。
摘要由CSDN通过智能技术生成

        众所周知,我们在使用Struts2进行项目开发的时候,如果为某个Action配置拦截器,那么这个拦截器就会拦截该Action内的所有方法。但是在有些情况下,我们不需要拦截所有的方法,只想拦截指定的方法,此时就需要用到Struts2拦截器的方法过滤的特性了。

        为了实现方法过滤的特性,Struts2提供了一个MethodFilterInterceptor类,该类是AbstractInterceptor类的子类,如果想要自己实现的拦截器支持方法过滤特性,那就要继承MethodFilterInterceptor。

        MethodFilterInterceptor类重写了AbstractInterceptor类的intercept方法,但是提供了一个doIntercept抽象方法。从这种设计方法可以看出,MethodFilterInterceptor类的intercept已经实现了对Action的拦截行为,但是真正的拦截逻辑还需要开发者自己来写,也就是通过回调dointercept方法实现。可见,如果我们想要实现自己的拦截逻辑,则应该重写doIntercept方法。

        下面我们通过一个简单的方法过滤示例,来展示如何实现方法过滤,具体代码如下:

// 拦截方法的拦截器,应该继承MethodFilterInterceptor抽象类
public class MyFilterInterceptor
	extends Me
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值