Filter:

1、概念:

  web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,做一些事。

  过滤器的作用:一般用于完成一些通用的操作:登录验证、统一编码处理,敏感字符处理....

2、快速入门:

  步骤:

    1、定义一个类,实现Filter接口。

    2、复写方法。

    3、配置拦截路径。

      * web.xml

 <filter>
<filter-name>demo1</filter-name>
<filter-class>filter.filter</filter-class>
</filter>
<filter-mapping>
<filter-name>demo1</filter-name>
<!-- 拦截路径-->
<url-pattern>/*</url-pattern>
</filter-mapping>

      * 注解:@WebFilter("/*")

3、过滤器细节。

  1、过滤器执行流程:执行过滤器 ----  执行放行后的资源 ---- 回来执行放行代码后面的代码。

  2、过滤器的生命周期方法。

    1、init :在服务器启动后,会创建Filter对象,条用init方法。只执行一次。用来加载资源。

    2、doFilter :每次请求被拦截资源时会执行。执行多次。

    3、destroy:在服务器正常关闭时执行,销毁Filter对象。用于释放资源。

  4、过滤器配置详解。

    1、拦截路径配置。

      * 具体资源路径:/index.jsp :只有访问index.jsp资源时过滤器才执行。

      * 拦截目录: /user/* :。。。。。

      * 后缀名拦截: * . jsp :。。。。

      * 拦截所有资源: /*

    2、拦截方式配置。

      * 注解配置:设置dispatcherTypes属性。

        1、REQUEST:默认值,浏览器直接请求资源时过滤。

        2、FORWARD:转发访问资源时。。

        3、INCLUDE:包含访问资源时。。。

        4、ERROR:错误跳转资源。

        5、ASYNC:异步访问资源时。

      * web.xml 配置 :设置<dispatcher></dispatcher> 标签。

  5、过滤器链(配置多个过滤器)

    * 执行顺序:两个过滤器:filter1 filter2 :filter1-》filter2-》资源-》filter2 -》filter1.

    * 过滤器先后顺序问题:

      1、注解配置:比较类名的字符串,小的先执行。

      2、web.xml 配置:谁在前面谁先执行。

Listener:

1、概念。

事件监听机制:

  * 事件 :一件事情

  * 事件源:事件发生的地方

  * 监听器 :一个对象

  * 注册监听:将事件、事件源、监听器绑定在一起。发生某个事件后,执行监听器代码。

2、ServletContextListener:监听ServletContext对象的创建和销毁。

  *

Filter和Listener的更多相关文章

  1. Servlet、Filter、Listener、Interceptor

    首先,JSP/Servlet规范中定义了Servlet.Filter.Listener这三种角色,并没有定义Interceptor这个角 色,Interceptor是某些MVC框架中的角色,比如Str ...

  2. servlet、filter、listener、interceptor之间的区别和联系

    一.概念 1.servlet:servlet是一种运行服务器端的java应用程序,具有独立于平台和协议的特性,并且可以动态的生成web页面,它工作在客户端请求与服务器响应的中间层. 2.filter: ...

  3. j2ee Servlet、Filter、Listener

    首先,JSP/Servlet规范中定义了Servlet.Filter.Listener这三种角色,并没有定义Interceptor这个角色,Interceptor是某些MVC框架中的角色,比如Stru ...

  4. JavaWeb之Filter、Listener

    昨天和大家介绍了一下JSON的用法,其实JSON中主要是用来和数据库交互数据的.今天给大家讲解的是Filter和Listener的用法. 一.Listenner监听器 1.1.定义 Javaweb中的 ...

  5. Filter、Listener 学习总结

    今天我们来介绍 Filter.Listener 这两个模块一些简单的知识和应用,接下来我们开始我们的正题 ! 1. Filter(过滤器) 1.1 对 Servlet 容器调用 Servlet 的过程 ...

  6. 基于注解的SpringMVC添加其他的Servlet、Filter以及Listener

    我们可以在AbstractAnnotationConfigDispatcherServletInitializer的实现类中重写onStartup(ServletContext servletCont ...

  7. SpringBoot中使用Servlet,Filter,Listener

    项目最近在替换之前陈旧的框架,改用SpringBoot进行重构,初接触,暂时还没有用到Servlet,Filter,Listener的地方,但在之前回顾Servlet的生命周期时,https://ww ...

  8. SpringBoot 配置 Servlet、Filter、Listener

    SpringBoot 配置 Servlet.Filter.Listener 在SpringBoot应用中,嵌入式的 Servlet 3.0+ 容器不会直接使用 ServletContainerInit ...

  9. 【Web】servlet、filter和listener

    一般地,servlet.filter.listener是配置到web.xml中(web.xml 的加载顺序是:context-param -> listener -> filter -&g ...

  10. 【SpringBoot】SpringBoot拦截器实战和 Servlet3.0自定义Filter、Listener

    =================6.SpringBoot拦截器实战和 Servlet3.0自定义Filter.Listener ============ 1.深入SpringBoot2.x过滤器Fi ...

随机推荐

  1. maker使用说明书

    1.以自带的示例数据为例 dpp_contig.fasta dpp_est.fasta dpp_protein.fasta te_proteins.fasta 2.生成控制文件 控制文件是特定于运行的 ...

  2. MQ异步同步搜索引擎ElasticSearch数据踩坑

    业务背景 在大型网站中,为了减少DB压力.让数据更精准.速度更快,将读拆分出来采用搜索引擎来为DB分担读的压力,ElasticSearch就是目前市面上比较流行的搜索引擎,他的检索速度奇快.支持各种复 ...

  3. 近年NOI题目总结

    NOI2015D1T1 题目大意:$T$ 组数据.在一个程序中有无数个变量 $x_i$.现在有 $n$ 条限制,形如 $x_i=x_j$ 或者 $x_i\ne x_j$.(对于每个限制 $i,j$ 给 ...

  4. makefile小计

    1. makefile格式如下,想要生成code.o,就要指定它依赖哪些东西.比如这里是依赖code.cpp这个文件 然后如何生成,换行+tab(与python类似,通过tab区分下面的是生成的命令) ...

  5. 《Linux就该这么学》培训笔记_ch15_使用Postfix与Dovecot部署邮件系统

    <Linux就该这么学>培训笔记_ch15_使用Postfix与Dovecot部署邮件系统 文章最后会post上书本的笔记照片. 文章主要内容: 电子邮件系统 配置Postfix服务程序 ...

  6. Python【每日一问】33

    问: [基础题1]:设计一个重量转换器,输入以“g”为单位的数字后返回换算成“kg”的结果 [基础题2]:设计一个求直角三角形斜边长的函数,比如直角边长分别为3和4,输出结果为:The right t ...

  7. 正则表达式之re模块

    re模块一.什么是正则表达式与re模块?1.1 字符组1.2 元字符1.2.1 单个使用1.2.2 组合使用二.为什么要使用正则三.如何使用3.1 re模块的三种比较重要的方法3.1.1 findal ...

  8. linux 重启jmeter服务

    #!/bin/bash #jmeter kill and start echo -e '\033[32m--------Jmeter---------------\033[0m' echo " ...

  9. 递推 + 高精度 --- Tiling

    Tiling Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7264   Accepted: 3528 Descriptio ...

  10. Prometheus 基于文件的服务发现

    Prometheus 基于文件的服务发现 官方文档:https://github.com/prometheus/prometheus/tree/master/discovery 服务发现支持: end ...