-
过滤器的生命周期 1.实例化 new 只创建一次,在容器启动时 2.初始化 init 在容器启动时,实例化后 3.过滤 doFilter 在过滤访问时 4.销毁 destroy 容器关闭时 过滤器配置在web.xml中查看全部
-
JAVA过滤机制——第一个过滤器案例 1、创建一个过滤器类 ,继承自servlet下的Filter 2、重写三个方法init() doFilter() destroy()方法 (1)init()初始化:这个方法可以读取web.xml文件中的过滤器初始化参数。通过参数FilterConfig arg0可以获取更多参数 (2)doFIlter()核心:完成实际的过滤操作。当用户请求访问与过滤器【关联的URL】时,Web容器将先调用过滤器的doFilter方法,FilterChain arg2参数可以调用chain.doFilter方法,将请求传给下一个过滤器(或目标资源),或利用转发,重定向将请求转发给其他资源。 (3)web容器在消耗过滤器前调用该方法,用于释放过滤器占用的资源。(大多数情况用不到)查看全部
-
Web应用允许多个过滤器来过滤页面请求——联想现实生活中的例子是最好理解的啦!比如:为了获得更加干净的水,可能需要多个过滤器来进行过滤。 这个时候就分为两种情况了 1:多个过滤器过滤的URL不同,那么此时的多个过滤器是互不相干的,各过滤各的,互不干扰 2:多个多虑期过滤的URL相同,那么此时的多个过滤器就形成了一个过滤器链,此时就有个一个问题了Web容器现将对应的请求给谁过滤呢?处理规则也很简单,就是根据在Web.xml文件中配置的声明的顺序来决定,那个先过滤那个在过滤查看全部
-
看了两遍理解如下: 本节主要讲解了过滤器的两大分类:request和forward,其中过滤的默认规则是request方式 假设有两个页面:index.jsp和main.jsp,都使用了默认的过滤规则, 如果在过滤器的doFilter1方法中把index.jsp重定向到main.jsp页面上,则会死循环,因为sendRediect的过滤类型是request,当重定向时跳转到main.jsp的过滤规则也是request,会继续触发main.jsp的过滤器,从而陷入死循环; 而若是请求转发,其默认过滤规则是forward,当请求转发到main.jsp后,main.jsp的过滤规则是request而不是forward,所以不触发过滤; 当然,如果把请求转发的规则改为forward,那么也会陷入循环; 或者在jsp上写入script代码<jsp:forward page="/main.jsp">也会匹配过滤规则决定导致会不会产生死循环的结果;查看全部
-
WebFilter的常用属性查看全部
-
过滤器链执行顺序查看全部
-
如果是通过重定向的方法,那么就是调用的request来进行过滤;如果是转发的方法,就是通过forword的方法来过滤查看全部
-
java web中的过滤器的生命周期查看全部
-
WebFilter常用属性查看全部
-
Filter工作原理查看全部
-
@WebFilter注解可以简化web.xml配置查看全部
-
过滤器的生命周期查看全部
-
表达式查看全部
-
过滤器的web配置查看全部
-
@WebFilter注解查看全部
举报
0/150
提交
取消