更新時間:2021-07-27 16:57:24 來源:動力節(jié)點(diǎn) 瀏覽1032次
多個filter攔截的同一個請求,按web.xml配置順序進(jìn)行過濾
返回的響應(yīng)的從最后配置的filter開始過濾
具體配置步驟:
編寫Filter實(shí)現(xiàn)類
package cn.kihyou.b2c.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
//實(shí)現(xiàn)接口:javax.servlet.Filter;
public class AdminFilter implements Filter {
// 三個重要方法:初始化:init();攔截到要執(zhí)行的方法:doFilter();銷毀:destroy();
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
// Filter.super.init(filterConfig);
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
// TODO Auto-generated method stub
// 1.攔截客戶端/上一個filter發(fā)來的請求,是否放行到Servlet/下一個Filter
System.out.println("AdminFilter攔截到請求");
// 放行(放不放行您可以自己看著辦)
chain.doFilter(request, response);
// 2.攔截servlet/filter發(fā)回的響應(yīng),是否放行到客戶端/上一個filter
System.out.println("AdminFilter攔截到響應(yīng)");
}
@Override
public void destroy() {
// TODO Auto-generated method stub
// Filter.super.destroy();
}
}
<!-- Filter,過濾器 -->
<filter>
<!-- filter名,隨便起 -->
<filter-name>AdminFilter</filter-name>
<!-- 實(shí)現(xiàn)類所在目錄 -->
<filter-class>cn.kihyou.b2c.filter.AdminFilter</filter-class>
<!-- 初始化參數(shù) -->
<!-- 設(shè)置字符集,charset:UTF-8 -->
<init-param>
<!-- 參數(shù)名 -->
<param-name>charset</param-name>
<!-- 參數(shù)值 -->
<param-value>UTF-8</param-value>
</init-param>
<!-- 設(shè)置內(nèi)容類型及其字符集,contentType:text/html;charset=UTF-8 -->
<init-param>
<param-name>contentType</param-name>
<param-value>text/html;charset=UTF-8</param-value>
</init-param>
</filter>
<!-- filter的映射 -->
<filter-mapping>
<!-- 對應(yīng)的filter名 -->
<filter-name>AdminFilter</filter-name>
<!-- 要進(jìn)行攔截過濾的目錄 -->
<url-pattern>/web/admin/*</url-pattern>
</filter-mapping>
<session-config>
<!-- 超時時間,單位:分鐘 -->
<session-timeout>30</session-timeout>
</session-config>
以上就是動力節(jié)點(diǎn)小編介紹的"過濾器Filter的配置",希望對大家有幫助,想了解更多可查看Filter過濾器。動力節(jié)點(diǎn)在線學(xué)習(xí)教程,針對沒有任何Java基礎(chǔ)的讀者學(xué)習(xí),讓你從入門到精通,主要介紹了一些Java基礎(chǔ)的核心知識,讓同學(xué)們更好更方便的學(xué)習(xí)和了解Java編程,感興趣的同學(xué)可以關(guān)注一下。

初級 202925

初級 203221

初級 202629

初級 203743