动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

谈谈你对javaweb拦截器——interceptor的理解

05-29 16:38 243浏览
举报 T字号
  • 大字
  • 中字
  • 小字

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框架提供的更多功能。

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

0人推荐
共同学习,写下你的评论
0条评论
蛙课资讯
官方自媒体蛙课资讯

172篇文章贡献491043字

作者相关文章更多>

推荐相关文章更多>

蛙课网手机站正确的打开姿势~!

蛙课资讯07-11 17:20

【福利】来蛙课网,免费学Java全栈技术--已经结束

蛙课资讯09-04 15:27

Java面试前的突击要准备些什么

蛙课资讯06-12 17:09

Java开发招聘为什么有年龄的要求

蛙课资讯06-17 17:37

检测自己是否达到了java入门水平

蛙课资讯06-12 17:07

发评论

举报

0/150

取消