博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
初学Struts2-自定义拦截器及其配置
阅读量:6974 次
发布时间:2019-06-27

本文共 2736 字,大约阅读时间需要 9 分钟。

自定义拦截器,首先新建一个继承自AbstractInterceptor类的类,然后重写intercept方法,代码如下

public class HelloInterceptor extends AbstractInterceptor {    @Override    public String intercept(ActionInvocation invocation) throws Exception {        // TODO Auto-generated method stub        System.out.println("拦截器测试");        // 放行到下一个        return invocation.invoke();    }}

 

一、自定义拦截器,只作用于当前Action类

新建structs-interceptor.xml文件,然后进行相关配置,使用时要记得包含到structs.xml文件中;自定义的拦截器注册在包内(即package节点下),配置在action节点下,代码如下(记得配置structs提供的默认拦截器)

/index.jsp

 

二、自定义拦截器,作用于该包下所有Action类

 自定义拦截器,注册和配置都在package节点下,自定义的拦截器配置在拦截器栈中,最后还要重新配置structs的默认拦截器,这样,访问该包的action时就会走新配置的默认拦截器,代码如下

/index.jsp

 

三、自定义拦截器,实现允许在其他包下也可以有效

如果想让其他包下的action使用别的包下的拦截器,那么就让新的配置文件继承自其他包

/index.jsp

注意:由dtd文件决定了structs配置文件书写规则,所以拦截器和action的配置是有顺序的

四、自定义指定方法的拦截器

新建一个继承自MethodFilterInterceptor的类,并实现doIntercept方法,代码如下

public class MyMethodInterceptor extends MethodFilterInterceptor {    @Override    protected String doIntercept(ActionInvocation invocation) throws Exception {        // TODO Auto-generated method stub        System.out.println("方法拦截器");        return invocation.invoke();    }}

新建一个进行测试的Action类,代码如下

public class HelloAction2 extends ActionSupport {    @Override    public String execute() throws Exception {        // TODO Auto-generated method stub        return SUCCESS;    }        public void add(){        System.out.println("方法拦截器---add方法");    }        public void find(){        System.out.println("方法拦截器---find方法");    }    public void delete(){        System.out.println("方法拦截器---delete方法");    }}

新建struts-methodInterceptor.xml文件,进行相关配置,最后记得include到struts.xml文件中,配置如下

find
add
/index.jsp

 

转载地址:http://gzrsl.baihongyu.com/

你可能感兴趣的文章
Flutter初探
查看>>
python发送邮件
查看>>
拼?还是熬?一次发散且零散的创业心得分享
查看>>
Android控制颜色透明度百分比的方法
查看>>
开发者人手一个的chrome插件——掘金
查看>>
数据库读写分离,主从同步实现方法
查看>>
好用的Middleware实现
查看>>
如何可视化地查看 Linux 系统磁盘使用情况?
查看>>
Fiddler 抓包工具总结
查看>>
学习hadoop需要什么基础
查看>>
Linux上安装常用软件 & window 管理Linux工具
查看>>
iview-admin运行步骤
查看>>
原生表格组件--GridManager
查看>>
面试阿里,我还是挂在了第四轮……
查看>>
面试官:说说Java线程的生命周期
查看>>
5分钟从零构建第一个 Apache Flink 应用
查看>>
按钮代码 带注释
查看>>
springBoot + KISSO实现单点登录
查看>>
Promise面试题
查看>>
HA高可用
查看>>