1.過濾器
1.作用:對所有請求或響應做攔截操作
2.開發Filter
1.自定義一個XxxFilter實現javax.servlet.Filter接口
2.web.xml中配置(註解@webFilter(""))
<filter>
<filter-name>XxxFilter</filter-name>
<filter-class></filter-class>
</filter>
<filter-mapping>
<filter-name>XxxFilter</filter-name>
//攔截的資源
<url-pattern></url-pattern>
</filter-mapping>
3.Filter的生命週期
生命週期方法:
init(FilterConfig config)
doFiler(ServletRequest request,ServletResponse response,FilterChain chain)
destory()
執行的流程:
啓動服務器時,就會執行構造器和init方法
每一次請求都會執行doFilter方法
chain,doFilter(req,resp):放行
4.配置初始化參數
5.請求編碼過濾器
6.攔截所有請求,用初始化配置來配置不用攔截的uri,放行,其他uri如果用戶名存在才放行他uri
2.Listener(監聽器)
1.配置:
<Listener>
<Listener-class></Listener-class>
</Listener>
2.使用:
要使用哪個監聽器,就去實現對應的接口
3.常用的事件監聽
1.對作用域對象的創建銷燬監聽
ServletRequestListener
HttpSessionListener
ServletContextListener
2.對WEB作用域對象的屬性(添加、替換、刪除)方法進行監聽:
ServletRequestAttributeListener
HttpSessionAttributeListener
ServletContextAttributeListener