生活随笔
收集整理的這篇文章主要介紹了
Filter_细节_过滤器拦截方式配置
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
* 攔截方式配置:資源被訪問(wèn)的方式
?? ?* 注解配置:
?? ??? ?* 設(shè)置dispatcherTypes屬性
?? ??? ??? ?1. REQUEST:默認(rèn)值。瀏覽器直接請(qǐng)求資源
?? ??? ??? ?2. FORWARD:轉(zhuǎn)發(fā)訪問(wèn)資源
?? ??? ??? ?3. INCLUDE:包含訪問(wèn)資源
?? ??? ??? ?4. ERROR:錯(cuò)誤跳轉(zhuǎn)資源
?? ??? ??? ?5. ASYNC:異步訪問(wèn)資源
?? ?* web.xml配置
?? ??? ?* 設(shè)置<dispatcher></dispatcher>標(biāo)簽即可
?
package com.learn.web.filter;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;// 瀏覽器直接請(qǐng)求資源時(shí),該過(guò)濾器會(huì)被執(zhí)行。
//@WebFilter(value = "/index.jsp",dispatcherTypes =DispatcherType.REQUEST)
// 只有轉(zhuǎn)發(fā)訪問(wèn)index.jsp時(shí),該過(guò)濾器才會(huì)被執(zhí)行。
//@WebFilter(value = "/index.jsp",dispatcherTypes =DispatcherType.FORWARD)
// 瀏覽器直接請(qǐng)求index.jsp或者轉(zhuǎn)發(fā)訪問(wèn)的index.jsp。該過(guò)濾器才會(huì)被執(zhí)行。
//@WebFilter(value = "/index.jsp",dispatcherTypes ={DispatcherType.FORWARD,DispatcherType.REQUEST})
@WebFilter(value = "/*",dispatcherTypes ={DispatcherType.FORWARD,DispatcherType.REQUEST})
public class FilterDemo5 implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,FilterChain filterChain) throws IOException, ServletException {System.out.println("FilterDemo5 執(zhí)行------------");filterChain.doFilter(servletRequest,servletResponse);System.out.println("FilterDemo5 回來(lái)------------");}@Overridepublic void destroy() {}
}
package com.learn.web.servlet;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@WebServlet("/user/updateServlet")
public class ServletDemo2 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {this.doPost(req,resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {System.out.println("updateServlet...");// 轉(zhuǎn)發(fā)到index.jspreq.getRequestDispatcher("/index.jsp").forward(req,resp);}
}
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//package javax.servlet;public enum DispatcherType {FORWARD,INCLUDE,REQUEST,ASYNC,ERROR;private DispatcherType() {}
}
?
超強(qiáng)干貨來(lái)襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生
總結(jié)
以上是生活随笔為你收集整理的Filter_细节_过滤器拦截方式配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。