简单理解Struts2拦截器

在这里插入图片描述

拦截器是Struts2的一个重要特性,其定义在struts2-core-x.x.x.jar的struts-default.xml中,Struts2大多数核心功能的实现基于拦截器。拦截器可以在执行Action之前抓取用户请求以及在Action执行之后抓取向用户发送的响应,简言之拦截器在Action执行前后均会执行,可对Action的功能进行增强。

例如一般情况下,用户在打开某个页面前被要求登录,否则无法对资源进行访问,这就是拦截器中的权限拦截器在起作用。

Struts2中有许多内置拦截器(共35个,默认开启20个),每个拦截器均能完成相对独立的功能,而多个拦截器组合在一起并称为拦截器栈,最为重要的拦截器栈则是系统默认的DefaultStack。

权限拦截器访问示例:简单实现Struts2的权限拦截器
测试中需要注意的点:
    ① struts.xml中的package标签继承了struts-default拦截器栈后,默认执行35个中的20个拦截器
    ② 为action标签关联自定义拦截器后系统默认的拦截器()将不再生效
    ③ 若想要struts-default.xml中的默认拦截器栈继续生效则需在action标签中再编辑一条
在这里插入图片描述


自定义拦截器栈:
在这里插入图片描述


注册默认拦截器:
在这里插入图片描述


方法过滤拦截器:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


拦截器的执行顺序:拦截器的执行顺序与在struts.xml中的注册顺序一致,过滤器的执行顺序与在web.xml中的注册顺序一致

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值