概念: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標籤指定初始化參數 -->