インターフェース PathMatcher
- すべての既知の実装クラス:
AntPathMatcher
String
ベースのパスマッチングの戦略インターフェース。PathMatchingResourcePatternResolver
、AbstractUrlHandlerMapping
、WebContentInterceptor
で使用されます。
デフォルトの実装は AntPathMatcher
で、Ant スタイルのパターン構文をサポートしています。
- 導入:
- 1.2
- 作成者:
- Juergen Hoeller
- 関連事項:
メソッドのサマリー
修飾子と型メソッド説明2 つのパターンを組み合わせて、返される新しいパターンにします。extractPathWithinPattern
(StringSE pattern, StringSE path) パターンとフルパスを指定して、パターンマッピングされた部分を決定します。extractUriTemplateVariables
(StringSE pattern, StringSE path) パターンとフルパスを指定して、URI テンプレート変数を抽出します。getPatternComparator
(StringSE path) フルパスを指定すると、そのパスの明示性の順序でパターンをソートするのに適したComparator
SE を返します。boolean
指定されたpath
は、このインターフェースの実装によって一致するパターンを表しますか?boolean
この PathMatcher のマッチング戦略に従って、指定されたpath
を指定されたpattern
に一致させます。boolean
matchStart
(StringSE pattern, StringSE path) この PathMatcher のマッチング戦略に従って、指定されたpath
を指定されたpattern
の対応する部分と一致させます。
メソッドの詳細
isPattern
指定されたpath
は、このインターフェースの実装によって一致するパターンを表しますか?戻り値が
false
の場合、静的パス文字列での直接の等価比較は同じ結果をもたらすため、match(java.lang.String, java.lang.String)
メソッドを使用する必要はありません。- パラメーター:
path
- チェックするパス- 戻り値:
- 指定された
path
がパターンを表す場合、true
match
この PathMatcher のマッチング戦略に従って、指定されたpath
を指定されたpattern
に一致させます。- パラメーター:
pattern
- 照合するパターンpath
- テストするパス- 戻り値:
- 提供された
path
が一致した場合はtrue
、一致しなかった場合はfalse
matchStart
この PathMatcher のマッチング戦略に従って、指定されたpath
を指定されたpattern
の対応する部分と一致させます。完全なパスも一致すると想定して、指定されたベースパスに至るまでパターンが少なくとも一致するかどうかを決定します。
- パラメーター:
pattern
- 照合するパターンpath
- テストするパス- 戻り値:
- 提供された
path
が一致した場合はtrue
、一致しなかった場合はfalse
extractPathWithinPattern
パターンとフルパスを指定して、パターンマッピングされた部分を決定します。このメソッドは、パスのどの部分が実際のパターンを通して動的に一致するかを見つけることになっています。つまり、指定されたフルパスから静的に定義された先頭のパスを取り除き、実際にパターンに一致したパスの部分のみを返します。
次に例を示します: パターンとして "myroot/*.html"、フルパスとして "myroot/myfile.html" の場合、このメソッドは "myfile.html" を返す必要があります。詳細な決定ルールは、この PathMatcher のマッチング戦略に指定されています。
単純な実装は、実際のパターンの場合はそのままのフルパスを返し、動的部分を含まないパターンの場合は空の文字列を返します(つまり、
pattern
パラメーターは実際のパスとして適格でない静的パスです)pattern
)。高度な実装では、特定のパスパターンの静的部分と動的部分を区別します。- パラメーター:
pattern
- パスパターンpath
- イントロスペクトへのフルパス- 戻り値:
- 指定された
path
のパターンマッピングされた部分 (非null
)
extractUriTemplateVariables
パターンとフルパスを指定して、URI テンプレート変数を抽出します。URI テンプレート変数は、カーリー括弧( "{" および "}" )で表されます。次に例を示します: パターン "/hotels/{hotel}" およびパス "/hotels/1" の場合、このメソッドは「ホテル」→ を含むマップを返します。"1"。
- パラメーター:
pattern
- おそらく URI テンプレートを含むパスパターンpath
- テンプレート変数を抽出するフルパス- 戻り値:
- キーとして変数名を含むマップ。値としての変数値
getPatternComparator
フルパスを指定すると、そのパスの明示性の順序でパターンをソートするのに適したComparator
SE を返します。使用される完全なアルゴリズムは、基礎となる実装によって異なりますが、通常、返される
Comparator
は、より具体的なパターンが一般的なパターンの前に来るようにリストをソートSEします。- パラメーター:
path
- 比較に使用する完全なパス- 戻り値:
- 明示的な順序でパターンをソートできるコンパレータ
combine
2 つのパターンを組み合わせて、返される新しいパターンにします。2 つのパターンを結合するために使用される完全なアルゴリズムは、基礎となる実装に依存します。
- パラメーター:
pattern1
- 最初のパターンpattern2
- 2 番目のパターン- 戻り値:
- 2 つのパターンの組み合わせ
- 例外:
IllegalArgumentExceptionSE
- 2 つのパターンを結合できない場合