概念:html
使用步骤:java
代码示例:web
1 @WebFilter("/*")//访问全部资源以前,都会执行该过滤器
2 public class FilterDemo1 implements Filter {
3 @Override
4 public void init(FilterConfig filterConfig) throwsServletException {
5
6 }
7
8 @Override
9 public void doFilter(ServletRequest servletRequest,ServletResponse servletResponse, FilterChain filterChain)throws IOException, ServletException {
10 System.out.println("filterDemo1被执行了....");
11
12
13 //放行
14 filterChain.doFilter(servletRequest,servletResponse);
15
16 }
17
18 @Override
19 public void destroy() {
20
21 }
22 }
1 <filter>
2 <filter-name>demo1</filter-name>
3 <filter-class>cn.demo.web.filter.FilterDemo1<filter-class>
4 </filter>
5 <filter-mapping>
6 <filter-name>demo1</filter-name>
7 <!-- 拦截路径 -->
8 <url-pattern>/*</url-pattern>
9 </filter-mapping>
过滤器执行流程设计模式
过滤器生命周期方法浏览器
过滤器拦截路径配置:服务器
过滤器拦截方式配置:可配置多个请求方式app
过滤器链(配置多个过滤器)异步
概念:事件监听机制,web的三大组件之一。jsp
事件:一件事情ide
事件源 :事件发生的地方
监听器 :一个对象
注册监听:将事件、事件源、监听器绑定在一块儿。 当事件源上发生某个事件后,执行监听器代码
ServletContextListener:监听ServletContext对象的建立和销毁
方法1:void contextDestroyed(ServletContextEvent sce) ,ServletContext对象被销毁以前会调用该方法
方法2: void contextInitialized(ServletContextEvent sce) ,ServletContext对象建立后会调用该方法
使用步骤:
1.定义一个类,实现ServletContextListener接口
2.复写方法
3.配置
web.xml配置方式
1 <listener>
2 <listener-class>cn.test.web.listener. ContextLoaderListener</listener-class>
3 </listener>
4 <!-- context-param标签指定初始化参数 -->