Filter介绍
Filter可认为是Servlet的一种加强版,它主要用于对用户请求进行预处理,也可以对httpServletResponse进行后处理,是个典型的处理链。Filter也可以对用户请求生成响应,这一点与Servlet相同。
使用Filter的完整流程是:Filter对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器响应进行后处理。
Filter有如下几个用处
①:在httpServletRequest到达Servlet之前,拦截客户的HttpServletRequest。
②:根据需要检查HttpServletRequest,也可以修改HttpServletRequest头和数据。
③:在HttpServletResponse到达客户端前,拦截HttpServletResponse。
④:根据需要检查HttpServletResp,也可以修改HttpServletResponse头和数据。
创建一个Filter只需要两个步骤
①:创建Filter处理类
②:web.xml文件配置Filter。
创建Filter类
首先要实现javax.servlet.Filter接口,在该接口中定义了如下三个方法
①:init(FilterConfig config)用于完成Filter的初始化。
②:destory()用于Filter销毁前,完成某些资源的回收。
③:doFilter(ServletRequest request,ServletResponse response,FilterChain chain):实现过滤功能
实际上Filter和Servlet极其相似,区别只是Filter的doFilter()方法中多了一个FilterChain的参数,通过该参数可以控制是否放行用户请求。在实际项目中,Filter里doFilter()方法里的代码就是从多个Servlet的service()方法里抽取的通用代码。通过使用Filter可以实现更好的代码复用。
相关推荐
2020-5-05 Servlet学习 Tomcat 服务器配置 2020-5-08 UML 2020-5-08 Servlet学习 2020-5-09 Servlet学习 2020-5-10 Servlet学习 2020-5-11 Servlet学习---Cookie 2020-5-11 Servlet中的路径 2020-5-11 Servlet学习--...
NULL 博文链接:https://persistc.iteye.com/blog/264072
SpringBoot学习笔记所有源码集,包括 集成了freemarker、Servlet、拦截器、拦截器、Filter、静态资源处理、启动加载数据、Springboot 日志、JDBC使用、Springboot JPA、Mybatis、动态数据源、集成swagger、集成Redis...
Tomcat+*Servlet+Jsp+Filter+Listener
当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如果Filter“放行”,那么会继续执行用户请求的Servlet;如果Filter不放行,那么就不会执行用户请求的Servlet Filter是单例的 实现方式: 写一
文档与笔记:整理了开发过程中的关键决策、技术难题以及学习心得,有助于深入理解项目背后的思考过程。 二、适用人群 这个项目资源包适用于即将毕业或已经毕业,希望通过实际项目经验增强自己JavaWeb开发能力的同学...
Javaweb是Web开发的基础,学习整理的笔记,十分详细,包括下面的部分 JDBC HTTP协议 Web服务器 Servlet Request Response JSP MVC模式和三层架构 会话技术 Filter Listener
SpringBoot学习笔记所有源码集,包括 集成了freemarker、Servlet、拦截器、拦截器、Filter、静态资源处理、启动加载数据、Springboot 日志、JDBC使用、Springboot JPA、Mybatis、动态数据源、集成swagger、集成Redis...
利用丰富的文章内容吸引用户注册登录评论文章,对于用户的请求,后台service业务层都有相对应的curd功能为用户提供服务,后台servlet逻辑层控制整个web应用的页面逻辑跳转功能,Filter过滤器过滤掉没有用户信息的...
内容包括:MySQL、MySQL约束&多表、MySQL多表&事务、JDBC、数据库连接池、HTML、CSS、JS基础&高级、BootStrap、XML、Tomcat、Servlet&HTTP&Request、Response、Cookie&Session、JSP&EL&JSTL、Filter&Listener、...
Java Web基础与实例教程的PPT,自己制作的PPT,将近400页,免费分享,童鞋们努力学习吧。
1 SpringMVC 第一天课堂笔记 学习过的 MVC 框架:Struts2 Spring MVC 就是类似于 Struts2 的 MVC 框架,属于 SpringFrameWork 的后续产品。 2 为什么学 Spring MVC? SpringMVC 与 Struts2 区别 对比项目 SrpingMVC ...