Filter过滤器的例子与注解配置 |
您所在的位置:网站首页 › 拦截方式怎么设置 › Filter过滤器的例子与注解配置 |
概念 作用 创建 创建web项目 定义类实现Servlet接口,实现其抽象方法 配置Filter 原理 注解配置 过滤器放行 Filter的生命周期 Filter的拦截路径 Filter的拦截方式 Filter的过滤器链 概念 当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能 作用 一般用于完成通过的操作。比如登录验证,统一编码处理,敏感字符过滤等等 创建 创建web项目注意实现的是servlet包下的Filter 在项目的web.xml文件 中配置,(原理在下面说) 启动访问index.jsp 控制台输出 为什么index.jsp页面看不到内容,因为被我们的拦截器给拦截,说明我们的拦截器成功了 原理项目启动的时候会把配置文件web.xml解析,把相关东西装进容器 1、我们访问的是这个地址:http://localhost/filterWeb/index.jsp,找到虚拟目录filterWeb, 2、接着拦截的路径进行匹配/*,也就是配置里的/*内容,会映射找到demo1的内容demo1, 3、接着根据demo1找到标签里的内容,根据demo1对应找到com.lingaolu.filter.Demo1,这样就找到了我们的Demo1类, 4、通过反射创建实例,然后会执行doFilte方法,这是规范,所以要实现Filter类并且实现相关的方法。 注解配置通过上面我们了解了Filter拦截器的创建与在web.xml的配置,但是配置有点繁琐,所以我们介绍一下注解配置 我们创建新的类Demo2.同样实现Filter接口 可以使用注解配置,然后我们的web.xml不需要写任何配置,也就是这个文件你删掉也可以 接着在我们Demo2类名上加上注解@WebFilter("/*"),其中"/*"是你定义的拦截路径 ctrl+鼠标左键查看一下 WebFilter
我们先把xml配置的demo1的拦截器配置给注释掉,免得影响我们的demo2 启动访问index.jsp 看控制台输出 是不是很方便,比在xml配置方便多了,所以以后我们写使用注解配置,也不需要创建web.xml文件了。 这里我们可以快捷的创建过滤器 模板可以自己定义 上面我们的例子里面index.jsp页面被拦截了,所以没有出现任何内容,对于满足某些条件的连接,我们还是要放行的,比如登录的用户等等,将来可以做登录验证等等,满足条件的就放行, 如果全部都拦截,那么这个项目就没意义如果全部都放行,那么拦截就可能没什么意义将来做一些判断,满足某些条件的放行 filterChain.doFilter(servletRequest,servletResponse);启动访问index.jsp,有内容了,是因为我们放行了 控制台输出 Filter过滤器的生命周期 Filter的拦截路径配置Filter过滤器的拦截路径配置 Filter的拦截方式Filter的拦截方式配置 Filter的过滤器链Filter的过滤器链 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |