public final class MappedInterceptor extends ObjectSE implements HandlerInterceptor
HandlerInterceptor
への呼び出しを含み、委譲します。インターセプターが特定のリクエストパスに適用されるかどうかをテストするためのマッチングロジックも提供します。MappedInterceptor は、任意の AbstractHandlerMethodMapping
に直接登録できます。さらに、型 MappedInterceptor
の Bean は、AbstractHandlerMethodMapping
(祖先 ApplicationContext を含む)によって自動的に検出されます。これは、インターセプターがすべてのハンドラーマッピングで「グローバルに」登録されることを事実上意味します。
コンストラクターと説明 |
---|
MappedInterceptor(StringSE[] includePatterns, HandlerInterceptor interceptor) 新しい MappedInterceptor インスタンスを作成します。 |
MappedInterceptor(StringSE[] includePatterns, StringSE[] excludePatterns, HandlerInterceptor interceptor) 新しい MappedInterceptor インスタンスを作成します。 |
MappedInterceptor(StringSE[] includePatterns, StringSE[] excludePatterns, WebRequestInterceptor interceptor) 新しい MappedInterceptor インスタンスを作成します。 |
MappedInterceptor(StringSE[] includePatterns, WebRequestInterceptor interceptor) 新しい MappedInterceptor インスタンスを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
void | afterCompletion(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ExceptionSE ex) リクエスト処理の補完後、つまりビューのレンダリング後のコールバック。 |
HandlerInterceptor | getInterceptor() 実際の HandlerInterceptor 参照。 |
PathMatcher | getPathMatcher() 設定された PathMatcher、または存在しない場合は null 。 |
StringSE[] | getPathPatterns() インターセプターがマップされるアプリケーションへのパス。 |
boolean | matches(StringSE lookupPath, PathMatcher pathMatcher) 指定されたルックアップパスの一致を決定します。 |
void | postHandle(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ModelAndView modelAndView) ハンドラーの実行をインターセプトします。 |
boolean | preHandle(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler) ハンドラーの実行をインターセプトします。 |
void | setPathMatcher(PathMatcher pathMatcher) matches(String, org.springframework.util.PathMatcher) メソッドにデフォルトで渡されるものの代わりに、この MappedInterceptor で使用する PathMatcher を構成します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public MappedInterceptor(@Nullable StringSE[] includePatterns, HandlerInterceptor interceptor)
includePatterns
- マップするパスパターン (すべてのパスに一致する場合は空)interceptor
- 指定されたパターンにマッピングする HandlerInterceptor インスタンス public MappedInterceptor(@Nullable StringSE[] includePatterns, @Nullable StringSE[] excludePatterns, HandlerInterceptor interceptor)
includePatterns
- マップするパスパターン (すべてのパスに一致する場合は空)excludePatterns
- 除外するパスパターン (特定の除外がない場合は空)interceptor
- 指定されたパターンにマッピングする HandlerInterceptor インスタンス public MappedInterceptor(@Nullable StringSE[] includePatterns, WebRequestInterceptor interceptor)
includePatterns
- マップするパスパターン (すべてのパスに一致する場合は空)interceptor
- 指定されたパターンにマッピングする WebRequestInterceptor インスタンス public MappedInterceptor(@Nullable StringSE[] includePatterns, @Nullable StringSE[] excludePatterns, WebRequestInterceptor interceptor)
includePatterns
- マップするパスパターン (すべてのパスに一致する場合は空)excludePatterns
- 除外するパスパターン (特定の除外がない場合は空)interceptor
- 指定されたパターンにマッピングする WebRequestInterceptor インスタンス public void setPathMatcher(@Nullable PathMatcher pathMatcher)
matches(String, org.springframework.util.PathMatcher)
メソッドにデフォルトで渡されるものの代わりに、この MappedInterceptor で使用する PathMatcher を構成します。これは、デフォルトでサポートされる Ant スタイルのパスパターン以外のメタデータのマッピングをサポートするカスタム PathMatcher 実装を使用する場合にのみ必要となる高度なプロパティです。
@Nullable public PathMatcher getPathMatcher()
null
。public HandlerInterceptor getInterceptor()
HandlerInterceptor
参照。public boolean matches(StringSE lookupPath, PathMatcher pathMatcher)
lookupPath
- 現在のリクエストパス pathMatcher
- パスパターンマッチング用のパスマッチャー true
public boolean preHandle(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler) throws ExceptionSE
HandlerInterceptor
DispatcherServlet は、任意の数のインターセプターで構成される実行チェーンでハンドラーを処理し、ハンドラー自体を最後に処理します。このメソッドを使用すると、各インターセプターはチェーンの実行を中止することを決定でき、通常は HTTP エラーを送信するか、カスタムレスポンスを作成します。
注意 : 非同期リクエスト処理には特別な考慮事項が適用されます。詳細については、AsyncHandlerInterceptor
を参照してください。
デフォルトの実装は true
を返します。
HandlerInterceptor
の preHandle
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス handler
- 型および / またはインスタンス評価のために、実行するために選択されたハンドラー true
。そうでない場合、DispatcherServlet は、このインターセプターがすでにレスポンス自体を処理していると想定します。ExceptionSE
- エラーの場合 public void postHandle(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, @Nullable ModelAndView modelAndView) throws ExceptionSE
HandlerInterceptor
DispatcherServlet は、任意の数のインターセプターで構成される実行チェーンのハンドラーを処理します。ハンドラー自体は最後にあります。このメソッドを使用すると、各インターセプターは実行を後処理でき、実行チェーンの逆順で適用されます。
注意 : 非同期リクエスト処理には特別な考慮事項が適用されます。詳細については、AsyncHandlerInterceptor
を参照してください。
デフォルトの実装は空です。
HandlerInterceptor
の postHandle
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス handler
- 型やインスタンスの検査のために、非同期実行を開始したハンドラー(または HandlerMethod
)modelAndView
- ハンドラーが返した ModelAndView
(null
にすることもできます)ExceptionSE
- エラーの場合 public void afterCompletion(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, @Nullable ExceptionSE ex) throws ExceptionSE
HandlerInterceptor
メモ: このインターセプターの preHandle
メソッドが正常に完了し、true
を返した場合にのみ呼び出されます!
postHandle
メソッドと同様に、このメソッドはチェーンの各インターセプターで逆の順序で呼び出されるため、最初のインターセプターが最後に呼び出されます。
注意 : 非同期リクエスト処理には特別な考慮事項が適用されます。詳細については、AsyncHandlerInterceptor
を参照してください。
デフォルトの実装は空です。
HandlerInterceptor
の afterCompletion
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス handler
- 型やインスタンスの検査のために、非同期実行を開始したハンドラー(または HandlerMethod
)ex
- ハンドラーの実行時にスローされる例外(ある場合)。これには、例外リゾルバーを介して処理された例外は含まれません ExceptionSE
- エラーの場合