Design-pattern-intercepting-filter-pattern
提供:Dev Guides
デザインパターン-インターセプトフィルターパターン
インターセプトフィルターの設計パターンは、アプリケーションの要求または応答を使用して前処理/後処理を行う場合に使用されます。 要求を実際のターゲットアプリケーションに渡す前に、フィルターが要求に定義されて適用されます。 フィルターは、要求の認証/許可/ログ記録または追跡を実行し、対応するハンドラーに要求を渡すことができます。 以下は、このタイプのデザインパターンのエンティティです。
- フィルター-要求ハンドラーによる要求の実行の前または後に特定のタスクを実行するフィルター。
- フィルターチェーン-フィルターチェーンには複数のフィルターが搭載されており、ターゲットで定義された順序でフィルターを実行できます。
- ターゲット-ターゲットオブジェクトはリクエストハンドラーです
- フィルターマネージャー-フィルターマネージャーは、フィルターとフィルターチェーンを管理します。
- クライアント-クライアントは、ターゲットオブジェクトにリクエストを送信するオブジェクトです。
実装
エンティティを表すさまざまなオブジェクトとして、FilterChain _、 FilterManager 、 Target 、 Client_を作成します。_AuthenticationFilter_と_DebugFilter_は、具体的なフィルターを表します。
デモクラス_InterceptingFilterDemo_は、_Client_を使用して、インターセプティングフィルターの設計パターンを示します。
Intercepting Filter Pattern UML Diagram
ステップ1
フィルターインターフェイスを作成します。
Filter.java
ステップ2
具体的なフィルターを作成します。
AuthenticationFilter.java
DebugFilter.java
ステップ3
ターゲットを作成
Target.java
ステップ4
フィルターチェーンの作成
FilterChain.java
ステップ5
フィルターマネージャーの作成
FilterManager.java
ステップ6
クライアントを作成
Client.java
ステップ7
_Client_を使用して、インターセプトフィルターの設計パターンを示します。
InterceptingFilterDemo.java
ステップ8
出力を確認します。