谈谈你对javaweb拦截器——interceptor的理解-蛙课网

javaweb开发中,拦截器是一个必不可少的功能,那么拦截器是什么呢,他怎么使用呢,接下来我们一起看一下javaweb拦截器——interceptor。

在Struts2框架中,拦截器interceptor是核心功能之一,Struts2是一个基于MVC设计模式的开源框架,在Struts2框架中,拦截器的主要工作内容是完成请求参数的解析,将页面表单参数赋给值栈中相应的属性,执行功能检验、程序异常调试等。也就是拦截用户的请求,对于拦截下来的用户请求进行相应的处理,比如进行权限验证,也可以用来判断用户是否登录。就像我们去银行办理银行卡一样,你需要把身份证放到机器中,由他们的系统进行判断,身份证信息是否和公安系统的信息一致,还有进行身份证人脸与真实人脸进行比对,检查是否一致等等,这些都用interceptor拦截器进行的操作。

拦截器一般分为三种方式,同样三种方式设置的地方是不同的,拦截使用的方法也是不同的。第一种自定义拦截器,需要在写类的时候,让类去实现interceptor接口,这样才可以使用interceptor接口中的方法,进行功能的实现。interceptor接口为拦截器提供了生命周期的三种方法,分别是init()方法,在拦截器创建后就可以调用了;destroy()方法,用来释放和拦截相关资源,一般在拦截器对象销毁之前使用;Intercept(ActionInvocation invocation),在拦截过程中起到核心的作用,也是用来实现拦截的具体操作的,比如判断“张三”登录的密码和原本设置的密码是否一致等。第二种是实现权限控制拦截器,主要的作用是判断用户是否登录,可以跟踪用户的会话对象session来完成,拦截器使用的过程中需要用到ActionContext对象和intercept方法。第三种是配置权限控制拦截器,是一种比较特殊的的拦截器方式,我们只有在struts.xml的配置文件中进行定义拦截器,才能使用权限控制这一种拦截器,在Struts.xml中拦截器使用的标签是interceptors>interceptors>,需要先引用系统默认的defaultStack,这样Web应用才可以使用Struts2框架提供的更多功能。

其实拦截器interceptor在javaweb项目中使用的次数也很多,我们根据具体情况,进行不同的使用即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值