在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
今天要学习的是关于Filter的内容,主要包括Filter的概念、快速入门、代码演示、过滤器细节,对Filter有学习需要的小伙伴可以在看完本文后,再把文章收藏起来以便于以后的复习,现在一起来看看Java Web之Filter的学习笔记吧~

1、概念
Filter就是过滤器,在我们生活中有各种各样的过滤器,比如净水器,空气净化器等等。但是Filter指的是web中的过滤器,当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。Filter一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符过滤等等。
2、快速入门
步骤:
A.定义一个类,实现接口Filter
B.复写方法
C、配置拦截路径:web.xml;注解
3、代码演示
@WebFilter("/*")//访问所有资源之前,都会执行该过滤器
public class FilterDemo1 implements Filter {
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("filterDemo1被执行了....");
//放行
filterChain.doFilter(servletRequest,servletResponse);
}
@Override
public void destroy() {
}
}
4、过滤器细节
(1)web.xml配置
<filter>
<filter-name>demo1</filter-name>
<filter-class>cn.itcast.web.filter.FilterDemo1</filter-class>
</filter>
<filter-mapping>
<filter-name>demo1</filter-name>
<!-- 拦截路径 -->
<url-pattern>/*</url-pattern>
</filter-mapping>
(2)过滤器执行流程
A.执行过滤器
B.执行放行后的资源
C.回来执行过滤器放行代码下边的代码
(3)过滤器生命周期方法
A.init:在服务器启动后,会创建Filter对象,然后调用init方法。只执行一次。用于加载资源
B.doFilter:每一次请求被拦截资源时,会执行。执行多次
C.destroy:在服务器关闭后,Filter对象被销毁。如果服务器是正常关闭,则会执行destroy方法。只执行一次。用于释放资源
(4)过滤器配置详解
拦截路径配置:
A.具体资源路径: /index.jsp 只有访问index.jsp资源时,过滤器才会被执行。
B.拦截目录: /user/* 访问/user下的所有资源时,过滤器都会被执行。
C.后缀名拦截: *.jsp 访问所有后缀名为jsp资源时,过滤器都会被执行。
D.拦截所有资源:/* 访问所有资源时,过滤器都会被执行。
以上就是Java Web之Filter学习笔记的全部内容,大家都看懂了吗?如果对本章还有什么疑问,可以在博学谷官网直接进行学习视频的学习,相信可以更加轻松掌握Filter的相关知识点。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java面试常见关于多线程的面试题
多线程是Java技术中常用而且相对比较难易理解的一个知识点。而且多线程也是企业实际应用中必备的技术,因此在面试的过程中,面试者经常被问到关于多线程的问题,遇到这些问题大家应该怎么办呢?赶紧恶补一下Java面试常见关于多线程的面试题吧。
6894
2019-09-04 18:50:46
基于Java的游戏设计之植物大战僵尸
植物大战僵尸这款游戏相信大家或多或少都玩过,那么大家有没有想过自己尝试着做一下植物大战僵尸的游戏设计呢。本文将基于Java语言为大家展示如何开发出植物大战僵尸游戏的简易版本,主要内容包括规则、对象、功能和背景音乐的相关内容设计,如果大家对此有兴趣的话,就接着看下去吧!
8975
2020-04-20 11:59:20
Java速成需要培训多久?
Java速成需要培训多久?相信这样问的小伙伴,参加培训的目的一定是冲着就业去的。既然学习的目的这么强烈,我们就以市面上绝大多数脱产培训的时间为参照,根据学习者自身的学习强度安排和个人能力差异推测,学习的时间大概是4~6个月不等。当然速成也要在保证学习内容质量的前提下完成培训,下面我们来具体看看Java速成培训的内容。
7522
2020-04-28 12:16:42
网络编程如何快速入门?
对于零基础的IT初学者来讲,网络编程是必须掌握的基础知识。那么,网络编程如何快速入门呢?本文将为大家介绍一下博学谷的免费在线课程《快乐的Java网络编程》,该课程只用两小时就能带大家轻松学习网络编程三要素、UDP通信和TCP通信等核心知识,下面一起来了解一下课程的详细内容吧!
5565
2020-06-29 16:18:08
现在学Java编程开发好就业吗?
现在Java就业市场如何?如果从现在开始学习Java编程开发好就业吗?是不是真的如网上各种文章说的一样,Java开发工程师就业市场人才缺口非常大呢?其实在小编看来,现在的Java就业市场可以总结为两句话:就业机会多,但就业门槛正在不断提升!现在开始学习Java编程开发是否好就业,已经不仅仅是市场需求所决定的,更重要的是通过学习对知识的掌握的程度是否能够与企业招聘需求想匹配。
4877
2020-07-24 16:14:52
