SpringBoot Filter 過濾

1.經過掃描註解完成Filter組件註冊html

  1. 建立一個類,實現Filter接口,實現doFilter()方法數組

  2. 在該類使用註解@WebFilter,設置filterNameurlPatternsjsp

  3. 在doFilter中編寫代碼ide

  4. 編寫啓動類:增長註解@ServletComponentScanurl

   /**
    * SpringBoot整合Filter 方式一 項目 www.fhadmin.org
    */
   //@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("進入Filter");
   		chain.doFilter(request, response);
   		System.out.println("離開Filter");
   	}
   }

//項目 www.fhadmin.org
@SpringBootApplication @ServletComponentScan public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }

urlPatterns 是數組類型的,能夠攔截多個 例如:urlPatterns= {".do",".jsp"}spa

2.經過方法完成Filter組件註冊code

  1. 建立一個類,實現Filter接口,實現doFilter()方法htm

  2. 編寫啓動類對象

  • 添加一個方法,返回值必須是FilterRegistrationBean的對象,他可以建立Filter對象的實例對象blog

  • 建立FilterRegistrationBean對象,傳入實例化的Filter對象

  • 添加Url,bean.addUrlPatterns();

  • 返回FilterRegistrationBean對象

  • 在此方法上增長@Bean的註解

/**
	 * 註冊Filter項目 www.fhadmin.org
	 */ 
	@Bean
	public FilterRegistrationBean getFilterRegistrationBean() {
		FilterRegistrationBean bean  = new FilterRegistrationBean(new SecondFilter());
		//bean.addUrlPatterns(new String[] {"*.do","*.jsp"});
		bean.addUrlPatterns("/second");
		return bean;
	}
相關文章
相關標籤/搜索