SpringBoot Filterは、フィルタリングとインターセプトの2つの方法を構成します

1.注釈をスキャンして、フィルターコンポーネントの登録を完了します

  1. クラスを作成し、Filterインターフェイスを実装し、doFilter()メソッドを実装します

  2. このクラス注釈@WebFilterを使用し、filterNameurlPatternsを設定ます

  3. doFilterでコードを書く

  4. スタートアップクラスの作成:注釈@ServletComponentScanを追加

   / ** 
    * SpringBootPythonFilterシステム一项目www.fhadmin.org 
    * / 
   // @ WebFilter(filterName = "FirstFilter"、urlPatterns = {"* .do"、 "* 
   。jsp "})@ WebFilter(filterName = " FirstFilter "、urlPatterns =" / first ")
   public classFirstFilterはFilterを実装します{ 
   
   	@Overridepublic 
   	void doFilter(ServletRequest request、ServletResponse response、FilterChain chain)
   			throws IOException、ServletException { 
   		System.out.println("到入フィルター "); 
   		chain.doFilter(リクエスト、レスポンス); 
   		System.out.println( "分離フィルター"); 
   	} 
   }

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

urlPatterns は配列タイプであり、複数をインターセプトできます。例:urlPatterns = {" .do"、 " .jsp"}

2.メソッドを使用してフィルターコンポーネントの登録を完了します

  1. クラスを作成し、Filterインターフェイスを実装し、doFilter()メソッドを実装します

  2. スタートアップクラスを書く

  • メソッドを追加します。戻り値はFilterRegistrationBeanのオブジェクトである必要があり、Filterオブジェクトのインスタンスを作成できます。

  • FilterRegistrationBeanオブジェクトを作成し、インスタンス化されたFilterオブジェクトを渡します

  • Url、bean.addUrlPatterns();を追加します。

  • FilterRegistrationBeanオブジェクトを返します

  • このメソッドに@Beanアノテーションを追加します

	/ 
	 ***フィルター项目www.fhadmin.org 
	 * /  
	@Bean 
	public FilterRegistrationBean getFilterRegistrationBean(){ 
		FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter()); 
		//bean.addUrlPatterns(new String [] {"* .do"、 "*。jsp"}); 
		bean.addUrlPatterns( "/ second"); 
		リターンビーン; 
	}

 


おすすめ

転載: blog.51cto.com/14622073/2544638