クラス 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 コンポーネントをデコードします。static StringSE指定されたエンコードされた URI コンポーネントをデコードします。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(ObjectSE... uriVariables) 指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。encodeUriVariables(MapSE<StringSE, ?> uriVariables) 指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。static StringSEencodeUserInfo(StringSE userInfo, StringSE encoding) 指定された URI ユーザー情報を指定されたエンコードでエンコードします。static StringSEencodeUserInfo(StringSE userInfo, CharsetSE charset) 指定された URI ユーザー情報を指定されたエンコードでエンコードします。static StringSEextractFileExtension(StringSE path) 指定された URI パスからファイル拡張子を抽出します。
コンストラクターの詳細
UriUtils
public UriUtils()
メソッドの詳細
encodeScheme
指定されたエンコーディングで指定された URI スキームをエンコードします。- パラメーター:
scheme- エンコードされるスキームencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたスキーム
encodeScheme
指定されたエンコーディングで指定された URI スキームをエンコードします。- パラメーター:
scheme- エンコードされるスキームcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたスキーム
- 導入:
- 5.0
encodeAuthority
指定された URI オーソリティを指定されたエンコードでエンコードします。- パラメーター:
authority- エンコードされる権限encoding- エンコードする文字エンコード- 戻り値:
- エンコードされたオーソリティ
encodeAuthority
指定された URI オーソリティを指定されたエンコードでエンコードします。- パラメーター:
authority- エンコードされる権限charset- エンコードする文字エンコード- 戻り値:
- エンコードされたオーソリティ
- 導入:
- 5.0
encodeUserInfo
指定された URI ユーザー情報を指定されたエンコードでエンコードします。- パラメーター:
userInfo- エンコードされるユーザー情報encoding- エンコードする文字エンコード- 戻り値:
- エンコードされたユーザー情報
encodeUserInfo
指定された URI ユーザー情報を指定されたエンコードでエンコードします。- パラメーター:
userInfo- エンコードされるユーザー情報charset- エンコードする文字エンコード- 戻り値:
- エンコードされたユーザー情報
- 導入:
- 5.0
encodeHost
指定されたエンコーディングで、指定された URI ホストをエンコードします。- パラメーター:
host- エンコードされるホストencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたホスト
encodeHost
指定されたエンコーディングで、指定された URI ホストをエンコードします。- パラメーター:
host- エンコードされるホストcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたホスト
- 導入:
- 5.0
encodePort
指定された URI ポートを指定されたエンコードでエンコードします。- パラメーター:
port- エンコードされるポートencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたポート
encodePort
指定された URI ポートを指定されたエンコードでエンコードします。- パラメーター:
port- エンコードされるポートcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたポート
- 導入:
- 5.0
encodePath
指定された URI パスを指定されたエンコードでエンコードします。- パラメーター:
path- エンコードされるパスencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたパス
encodePath
指定された URI パスを指定されたエンコードでエンコードします。- パラメーター:
path- エンコードされるパスcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたパス
- 導入:
- 5.0
encodePathSegment
指定されたエンコーディングで、指定された URI パスセグメントをエンコードします。- パラメーター:
segment- エンコードされるセグメントencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたセグメント
encodePathSegment
指定されたエンコーディングで、指定された URI パスセグメントをエンコードします。- パラメーター:
segment- エンコードされるセグメントcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたセグメント
- 導入:
- 5.0
encodeQuery
指定された URI クエリを指定されたエンコーディングでエンコードします。- パラメーター:
query- エンコードされるクエリencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたクエリ
encodeQuery
指定された URI クエリを指定されたエンコーディングでエンコードします。- パラメーター:
query- エンコードされるクエリcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたクエリ
- 導入:
- 5.0
encodeQueryParam
指定された URI クエリパラメーターを指定されたエンコーディングでエンコードします。- パラメーター:
queryParam- エンコードされるクエリパラメーターencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたクエリパラメーター
encodeQueryParam
指定された URI クエリパラメーターを指定されたエンコーディングでエンコードします。- パラメーター:
queryParam- エンコードされるクエリパラメーターcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたクエリパラメーター
- 導入:
- 5.0
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
指定された URI フラグメントを指定されたエンコードでエンコードします。- パラメーター:
fragment- エンコードされるフラグメントencoding- エンコードする文字エンコード- 戻り値:
- エンコードされたフラグメント
encodeFragment
指定された URI フラグメントを指定されたエンコードでエンコードします。- パラメーター:
fragment- エンコードされるフラグメントcharset- エンコードする文字エンコード- 戻り値:
- エンコードされたフラグメント
- 導入:
- 5.0
encode
文字列文字セットを持つencode(String, Charset)のバリアント。- パラメーター:
source- エンコードされる文字列encoding- エンコードする文字エンコード- 戻り値:
- エンコードされた文字列
encode
RFC 3986 で定義されているように、URI 内の任意の場所で、不正な文字、予約された意味を持つすべての文字をエンコードします。これは、指定された文字列がそのまま保持され、URI の構造や意味に影響を与えないようにできます。- パラメーター:
source- エンコードされる文字列charset- エンコードする文字エンコード- 戻り値:
- エンコードされた文字列
- 導入:
- 5.0
encodeUriVariables
指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。- パラメーター:
uriVariables- エンコードされる URI 変数値- 戻り値:
- エンコードされた文字列
- 導入:
- 5.0
encodeUriVariables
指定されたすべての URI 変数値にencode(String, Charset)を適用する便利なメソッド。- パラメーター:
uriVariables- エンコードされる URI 変数値- 戻り値:
- エンコードされた文字列
- 導入:
- 5.0
decode
指定されたエンコードされた URI コンポーネントをデコードします。デコード規則については、
StringUtils.uriDecode(String, Charset)を参照してください。- パラメーター:
source- エンコードされた文字列encoding- 使用する文字エンコーディング- 戻り値:
- デコードされた値
- 例外:
IllegalArgumentExceptionSE- 指定されたソースに無効なエンコードされたシーケンスが含まれている場合- 関連事項:
decode
指定されたエンコードされた URI コンポーネントをデコードします。デコード規則については、
StringUtils.uriDecode(String, Charset)を参照してください。- パラメーター:
source- エンコードされた文字列charset- 使用する文字エンコーディング- 戻り値:
- デコードされた値
- 例外:
IllegalArgumentExceptionSE- 指定されたソースに無効なエンコードされたシーケンスが含まれている場合- 導入:
- 5.0
- 関連事項:
extractFileExtension
指定された URI パスからファイル拡張子を抽出します。- パラメーター:
path- URI パス (たとえば、"/products/index.html")- 戻り値:
- 抽出されたファイル拡張子 (たとえば、"html" )
- 導入:
- 4.3.2