目录
图像详解
Filter(过滤器)
1.1什么是过滤器?
Filter过滤器它是JavaWEB三大组件之一(Servlet应用程序、Listener监听器、Filter过滤器)
Filter过滤器它是JavaEE的规范,也就是接口。
Filter过滤器它的作用:拦截请求,过滤响应
它会在一组资源(jsp,servlet,.css,.html等)的前面执行
1.2过滤器的使用场景
- .防止未登录就进入界面
- 控制应用编码
- 过滤敏感词汇等场景
1.3如何编写过滤器 ?
- 自定义类实现Filter接口 重写接口中的抽象方法
- 在web.xml中进行配置
/*(表示所有页面)
也可以指定专门的页面 比如:
<url-pattern>/a.jsp</url-pattern>
<url-pattern>/*.jsp</url-pattern>
<url-pattern>/*.do</url-pattern>
<url-pattern>/*</url-pattern>
1.4.Filter接口的生命周期
void init(FilterConfig)
* 创建之后,马上执行:Filter会在服务器启动时就创建
void destory()
* 销毁之前执行!在服务器关闭时销毁
void doFilter(ServletRequest,ServletResponse,FilterChain)
* 每次过滤器时都会执行
1.5Filter接口中的相关类介绍
FilterConfig---->与ServletConfig相似
* 获取初始化参数:getInitParameter
* 获取过滤器名称:getFilterName
* 获取application:getServletContext
FilterChain
* doFilter(ServletRequest,ServletResponse):放行请求
1.6多个过滤器的执行顺序
过滤器的执行顺序和url-pattern标签匹配的精确程度无关,
只和他们的filter-mapping标签在web.xml文件中的顺序有关,靠上的配置的先执行。
Listener(监听器)
1.1什么是监听器?
主要功能是负责监听Web的各种操作,当相关的事件触发后将产生事件,并对事件进行处理。
监听器分三种
- application监听器
- session监听器
- request监听器
1.2如何使用?
实现 ServletContextListener
实现 HttpSessionListener(偶尔用)
1.3配置
web.xml
<listener>
<listener-class>com.listener.Application</listener-class>
</listener>
1.4案例:监听在线人数
listener中