Filter_细节_过滤器拦截方式配置
* 拦截方式配置:资源被访问的方式
* 注解配置:
* 设置dispatcherTypes属性
1. REQUEST:默认值。浏览器直接请求资源
2. FORWARD:转发访问资源
3. INCLUDE:包含访问资源
4. ERROR:错误跳转资源
5. ASYNC:异步访问资源
* web.xml配置
* 设置<dispatcher></dispatcher>标签即可
package com.learn.web.filter;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;// 浏览器直接请求资源时,该过滤器会被执行。
//@WebFilter(value = "/index.jsp",dispatcherTypes =DispatcherType.REQUEST)
// 只有转发访问index.jsp时,该过滤器才会被执行。
//@WebFilter(value = "/index.jsp",dispatcherTypes =DispatcherType.FORWARD)
// 浏览器直接请求index.jsp或者转发访问的index.jsp。该过滤器才会被执行。
//@WebFilter(value = "/index.jsp",dispatcherTypes ={DispatcherType.FORWARD,DispatcherType.REQUEST})
@WebFilter(value = "/*",dispatcherTypes ={DispatcherType.FORWARD,DispatcherType.REQUEST})
public class FilterDemo5 implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,FilterChain filterChain) throws IOException, ServletException {System.out.println("FilterDemo5 执行------------");filterChain.doFilter(servletRequest,servletResponse);System.out.println("FilterDemo5 回来------------");}@Overridepublic void destroy() {}
}
package com.learn.web.servlet;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@WebServlet("/user/updateServlet")
public class ServletDemo2 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {this.doPost(req,resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {System.out.println("updateServlet...");// 转发到index.jspreq.getRequestDispatcher("/index.jsp").forward(req,resp);}
}
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//package javax.servlet;public enum DispatcherType {FORWARD,INCLUDE,REQUEST,ASYNC,ERROR;private DispatcherType() {}
}
Filter_细节_过滤器拦截方式配置相关推荐
- Filter_细节_过滤器拦截路径配置
过滤器配置详解 * 拦截路径配置: 1. 具体资源路径: /index.jsp 只有访问index.jsp资源时,过滤器才会被执行 2. 拦截目录: /us ...
- Filter_细节_过滤器链(多个过滤器)
过滤器链(配置多个过滤器) * 执行顺序:如果有两个过滤器:过滤器1和过滤器2 1. 过滤器1 2. 过滤器2 3. 资源执行 ...
- Filter过滤器的拦截方式配置
Filter的介绍 拦截方式配置 REQUEST:默认值.浏览器直接请求资源 FORWARD:转发访问资源 INCLUDE:包含访问资源 ERROR:错误跳转资源 ASYNC:异步访问资源 多种拦截方 ...
- Filter过滤器拦截方式
Filter过滤器有五种拦截方式,用注解配置dispatcherTypes属性 REQUEST:默认值,浏览器直接请求的资源会被过滤器拦截 FORWARD:转发访问资源会被过滤器拦截 INCLUDE: ...
- Filter过滤器拦截路径配置
在Filter中拦截路径配置有四种形式 具体资源路径拦截:@WebFilter("/index.jsp") //这是指访问index.jsp的时候会经过过滤器 具体目录拦截:@We ...
- java过滤器 配置路径_Filter过滤器拦截路径配置
在Filter中拦截路径配置有四种形式 具体资源路径拦截:@WebFilter("/index.jsp") //这是指访问index.jsp的时候会经过过滤器 具体目录拦截:@We ...
- Filter_细节_执行流程生命周期
过滤器执行流程 1. 执行过滤器 2. 执行放行后的资源 3. 回来执行过滤器放行代码下边的代码 过滤器生命周期方法 1. init:在服务器启动后,会创建Filter ...
- Filter 过滤器拦截路径配置
具体资源拦截: /index.jsp 只有访问/index.jsp资源时, 过滤器才会被执行 @WebFilter("/index.jsp") public class Filte ...
- java过滤器的执行顺序_Java Filter过滤器(拦截路径的配置+拦截方式的配置+生命周期+多个过滤器的先后执行顺序)...
Java Filter过滤器+Listen监听器 啥是过滤器 顾名思义即过滤掉一些东西,比如我们经历的高考中考都是过滤器,他过滤掉一些在学习这一方面不是很好的人,而那些成绩好的人则升入高中,大学. 但 ...
最新文章
- Linux: what's the difference between /proc/self and /proc/$$?
- 四条使用Spring BeanUtils的总结,避免各种诡异的属性拷贝问题!
- Openfire及Spark配置(Mac)
- mysql查询时间类型c语言处理_资讯类app用户热度及资讯类型分析-Mysql进行数据预处理...
- C/Cpp / #define
- [HDU] 2553 N皇后问题-简单深搜
- php计算代码运行时间与内存使用的一段代码
- python 水位_Leetcode 42. 接雨水 - python - 递归 查找分水岭
- vfp 连接mysql数据库_Visual FoxPro操作数据库之函数大全
- java 对数取反_如何理解「对数」?
- HDOJ 4632
- app--查看包名的五种常用方法
- 面试总结:Golang常见面试题汇总
- 量化投资学习——Boost多因子选股综述
- MIMO雷达波形设计
- 计算机检索的截词检索方法,常用的截词检索有哪些
- 备份微信聊天记录为 txt 格式保存(免 root)
- Teamviewer被检查成商业用途的解决方法
- 30M DEM数据处理成图
- 【iOS】—— FMDB的基础用法