クラス UriUtils
java.lang.ObjectSE
org.springframework.web.util.UriUtils
RFC 3986 に基づく URI エンコードおよびデコードのユーティリティメソッド。
エンコード方式には 2 つの型があります。
"encodeXyz"-- これらは、RFC 3986 で定義されているように、US-ASCII 以外の文字や、指定された URI コンポーネント型内で不正な文字を含む不正な文字をパーセントエンコードすることによって、特定の URI コンポーネント (パス、クエリなど) をエンコードします。エンコードに関するこのメソッドの効果は、URISE の複数引数コンストラクターを使用する場合に匹敵します。"encode"および"encodeUriVariables"- これらは、URI 内のどこでも、不正であるか、意味が予約されているすべての文字をパーセントでエンコードすることにより、URI 変数値をエンコードするために使用できます。
- 導入:
- 3.0
- 作成者:
- Arjen Poutsma, Juergen Hoeller, Rossen Stoyanchev
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明static StringSE指定されたエンコードされた URI コンポーネント値を、各 "%xy" シーケンスを指定された文字エンコードの文字の 16 進表現に置き換えてデコードし、他の文字は変更しません。static StringSE指定されたエンコードされた URI コンポーネント値を、各 "%xy" シーケンスを指定された文字エンコードの文字の 16 進表現に置き換えてデコードし、他の文字は変更しません。static StringSE文字列文字セットを持つencode(String, Charset)のバリアント。static StringSERFC 3986 で定義されているように、URI 内のどこでも、不正であるか、意味が予約されているすべての文字をエンコードします。static StringSEencodeAuthority(StringSE authority, StringSE encoding) 指定された URI オーソリティを指定されたエンコードでエンコードします。static StringSEencodeAuthority(StringSE authority, CharsetSE charset) 指定された URI オーソリティを指定されたエンコードでエンコードします。static StringSEencodeFragment(StringSE fragment, StringSE encoding) 指定された URI フラグメントを指定されたエンコードでエンコードします。static StringSEencodeFragment(StringSE fragment, CharsetSE charset) 指定された URI フラグメントを指定されたエンコードでエンコードします。static StringSEencodeHost(StringSE host, StringSE encoding) 指定されたエンコーディングで、指定された URI ホストをエンコードします。static StringSEencodeHost(StringSE host, CharsetSE charset) 指定されたエンコーディングで、指定された URI ホストをエンコードします。static StringSEencodePath(StringSE path, StringSE encoding) 指定された URI パスを指定されたエンコードでエンコードします。static StringSEencodePath(StringSE path, CharsetSE charset) 指定された URI パスを指定されたエンコードでエンコードします。static StringSEencodePathSegment(StringSE segment, StringSE encoding) 指定されたエンコーディングで、指定された URI パスセグメントをエンコードします。static StringSEencodePathSegment(StringSE segment, CharsetSE charset) 指定されたエンコーディングで、指定された URI パスセグメントをエンコードします。static StringSEencodePort(StringSE port, StringSE encoding) 指定された URI ポートを指定されたエンコードでエンコードします。static StringSEencodePort(StringSE port, CharsetSE charset) 指定された URI ポートを指定されたエンコードでエンコードします。static StringSEencodeQuery(StringSE query, StringSE encoding) 指定された URI クエリを指定されたエンコーディングでエンコードします。static StringSEencodeQuery(StringSE query, CharsetSE charset) 指定された URI クエリを指定されたエンコーディングでエンコードします。static StringSEencodeQueryParam(StringSE queryParam, StringSE encoding) 指定された URI クエリパラメーターを指定されたエンコーディングでエンコードします。static StringSEencodeQueryParam(StringSE queryParam, CharsetSE charset) 指定された URI クエリパラメーターを指定されたエンコーディングでエンコードします。static MultiValueMap<StringSE, StringSE> encodeQueryParams(MultiValueMap<StringSE, StringSE> params) 指定されたMultiValueMapのクエリパラメーターを UTF-8 でエンコードします。static StringSEencodeScheme(StringSE scheme, StringSE encoding) 指定されたエンコーディングで指定された URI スキームをエンコードします。static StringSEencodeScheme(StringSE scheme, CharsetSE charset) 指定されたエンコーディングで指定された URI スキームをエンコードします。static ObjectSE[]encodeUriVariables(@Nullable ObjectSE... uriVariables) 指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。encodeUriVariables(MapSE<StringSE, ? extends @Nullable ObjectSE> uriVariables) 指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。static StringSEencodeUserInfo(StringSE userInfo, StringSE encoding) 指定された URI ユーザー情報を指定されたエンコードでエンコードします。static StringSEencodeUserInfo(StringSE userInfo, CharsetSE charset) 指定された URI ユーザー情報を指定されたエンコードでエンコードします。extractFileExtension(StringSE path) 指定された URI パスからファイル拡張子を抽出します。
コンストラクターの詳細
UriUtils
public UriUtils()
メソッドの詳細
encodeScheme
encodeScheme
encodeAuthority
encodeAuthority
encodeUserInfo
encodeUserInfo
encodeHost
encodeHost
encodePort
encodePort
encodePath
encodePath
encodePathSegment
encodePathSegment
encodeQuery
encodeQuery
encodeQueryParam
encodeQueryParam
encodeQueryParams
public static MultiValueMap<StringSE,StringSE> encodeQueryParams(MultiValueMap<StringSE, StringSE> params) 指定されたMultiValueMapのクエリパラメーターを UTF-8 でエンコードします。これは、エンコード済みのテンプレートから URI を作成するときに
UriComponentsBuilder.queryParams(MultiValueMap)で使用できます。MultiValueMap<String, String> params = new LinkedMultiValueMap<>(2); // add to params... ServletUriComponentsBuilder.fromCurrentRequest() .queryParams(UriUtils.encodeQueryParams(params)) .build(true) .toUriString();- パラメーター:
params- エンコードするパラメーター- 戻り値:
- エンコードされた名前と値を持つ新しい
MultiValueMap - 導入:
- 5.2.3
encodeFragment
encodeFragment
encode
文字列文字セットを持つencode(String, Charset)のバリアント。- パラメーター:
source- エンコードされる文字列encoding- エンコードする文字エンコード- 戻り値:
- エンコードされた文字列
encode
encodeUriVariables
encodeUriVariables
指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。- パラメーター:
uriVariables- エンコードされる URI 変数値- 戻り値:
- エンコードされた文字列
- 導入:
- 5.0
decode
指定されたエンコードされた URI コンポーネント値を、各 "%xy" シーケンスを指定された文字エンコードの文字の 16 進表現に置き換えてデコードし、他の文字は変更しません。- パラメーター:
source- エンコードされた URI コンポーネント値encoding- "%xy" シーケンスをデコードするために使用する文字エンコーディング- 戻り値:
- デコードされた値
- 例外:
IllegalArgumentExceptionSE- 指定されたソースに無効なエンコードされたシーケンスが含まれている場合- 関連事項:
decode
指定されたエンコードされた URI コンポーネント値を、各 "%xy" シーケンスを指定された文字エンコードの文字の 16 進表現に置き換えてデコードし、他の文字は変更しません。- パラメーター:
source- エンコードされた URI コンポーネント値charset- "%xy" シーケンスをデコードするために使用する文字エンコーディング- 戻り値:
- デコードされた値
- 例外:
IllegalArgumentExceptionSE- 指定されたソースに無効なエンコードされたシーケンスが含まれている場合- 導入:
- 5.0
- 関連事項:
extractFileExtension