這篇文章將為大家詳細(xì)講解有關(guān)SpringBoot 中怎么配置 Filter 過(guò)濾攔截,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
成都創(chuàng)新互聯(lián)專注于鄲城企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站開(kāi)發(fā)。鄲城網(wǎng)站建設(shè)公司,為鄲城等地區(qū)提供建站服務(wù)。全流程按需定制開(kāi)發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
創(chuàng)建一個(gè)類,實(shí)現(xiàn)Filter接口,實(shí)現(xiàn)doFilter()方法
在該類使用注解@WebFilter,設(shè)置filterName與urlPatterns
在doFilter中編寫代碼
編寫啟動(dòng)類:增加注解@ServletComponentScan
/** * SpringBoot整合Filter 方式一 項(xiàng)目 www.1b23.com */ //@WebFilter(filterName="FirstFilter" , urlPatterns= {"*.do","*.jsp"}) @WebFilter(filterName="FirstFilter" , urlPatterns= "/first") public class FirstFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println("進(jìn)入Filter"); chain.doFilter(request, response); System.out.println("離開(kāi)Filter"); } }
//項(xiàng)目 www.1b23.com@SpringBootApplication@ServletComponentScanpublic class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
urlPatterns 是數(shù)組類型的,可以攔截多個(gè) 例如:urlPatterns= {".do",".jsp"}
創(chuàng)建一個(gè)類,實(shí)現(xiàn)Filter接口,實(shí)現(xiàn)doFilter()方法
編寫啟動(dòng)類
添加一個(gè)方法,返回值必須是FilterRegistrationBean的對(duì)象,他能夠創(chuàng)建Filter對(duì)象的實(shí)例對(duì)象
創(chuàng)建FilterRegistrationBean對(duì)象,傳入實(shí)例化的Filter對(duì)象
添加Url,bean.addUrlPatterns();
返回FilterRegistrationBean對(duì)象
在此方法上增加@Bean的注解
/** * 注冊(cè)Filter項(xiàng)目 www.1b23.com */ @Beanpublic FilterRegistrationBean getFilterRegistrationBean() { FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter()); //bean.addUrlPatterns(new String[] {"*.do","*.jsp"}); bean.addUrlPatterns("/second"); return bean; }
關(guān)于SpringBoot 中怎么配置 Filter 過(guò)濾攔截就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。