クラス CustomMapEditor

java.lang.ObjectSE
java.beans.PropertyEditorSupportSE
org.springframework.beans.propertyeditors.CustomMapEditor
実装されたすべてのインターフェース:
PropertyEditorSE

public class CustomMapEditor extends PropertyEditorSupportSE
マップのプロパティエディター。任意のソースマップを特定のターゲットマップ型に変換します。
導入:
2.0.1
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • CustomMapEditor

      public CustomMapEditor(ClassSE<? extends MapSE> mapType)
      指定されたターゲット型の新しい CustomMapEditor を作成し、受信 null をそのまま保持します。
      パラメーター:
      mapType - ターゲット型。これは、マップのサブインターフェースまたは具象マップクラスである必要があります
      関連事項:
    • CustomMapEditor

      public CustomMapEditor(ClassSE<? extends MapSE> mapType, boolean nullAsEmptyMap)
      指定されたターゲット型の新しい CustomMapEditor を作成します。

      入力値が指定された型の場合、そのまま使用されます。別のマップ型または配列の場合は、指定されたマップ型のデフォルト実装に変換されます。値がそれ以外の場合、その単一の値を持つターゲット Map が作成されます。

      デフォルトの Map 実装は、SortedMap の場合は TreeMap、Map の場合は LinkedHashMap です。

      パラメーター:
      mapType - ターゲット型。これは、マップのサブインターフェースまたは具象マップクラスである必要があります
      nullAsEmptyMap - ap 受信 null 値を空のマップに変換するかどうか (適切な型)
      関連事項:
  • メソッドの詳細

    • setAsText

      public void setAsText(StringSE text) throws IllegalArgumentExceptionSE
      指定されたテキスト値を単一の要素を持つマップに変換します。
      次で指定:
      インターフェース PropertyEditorSEsetAsTextSE 
      オーバーライド:
      クラス PropertyEditorSupportSEsetAsTextSE 
      例外:
      IllegalArgumentExceptionSE
    • setValue

      public void setValue(@Nullable ObjectSE value)
      指定された値をターゲット型のマップに変換します。
      次で指定:
      インターフェース PropertyEditorSEsetValueSE 
      オーバーライド:
      クラス PropertyEditorSupportSEsetValueSE 
    • createMap

      protected MapSE<ObjectSE,ObjectSE> createMap(ClassSE<? extends MapSE> mapType, int initialCapacity)
      指定された初期容量で、指定された型のマップを作成します(マップ型でサポートされている場合)。
      パラメーター:
      mapType - Map のサブインターフェース
      initialCapacity - 初期容量
      戻り値:
      新しい Map インスタンス
    • alwaysCreateNewMap

      protected boolean alwaysCreateNewMap()
      渡されたマップの型がすでに一致している場合でも、常に新しいマップを作成するかどうかを返します。

      デフォルトは "false" です。オーバーライドして、新しいマップの作成を強制できます。たとえば、どのような場合でも要素を変換できます。

      関連事項:
    • convertKey

      protected ObjectSE convertKey(ObjectSE key)
      検出された各マップキーを変換するフック。デフォルトの実装では、渡されたキーをそのまま返します。

      たとえば、String から Integer への変換など、特定のキーの変換を実行するためにオーバーライドできます。

      実際に新しいマップを作成する場合にのみ呼び出されます! これは、渡されたマップの型がすでに一致している場合のデフォルトではありません。常に alwaysCreateNewMap() をオーバーライドして、新しいマップの作成を強制します。

      パラメーター:
      key - ソースキー
      戻り値:
      ターゲット Map で使用されるキー
      関連事項:
    • convertValue

      protected ObjectSE convertValue(ObjectSE value)
      検出された各 Map 値を変換するフック。デフォルトの実装では、渡された値をそのまま返します。

      たとえば、String から Integer への変換など、特定の値の変換を実行するためにオーバーライドできます。

      実際に新しいマップを作成する場合にのみ呼び出されます! これは、渡されたマップの型がすでに一致している場合のデフォルトではありません。常に alwaysCreateNewMap() をオーバーライドして、新しいマップの作成を強制します。

      パラメーター:
      value - ソース値
      戻り値:
      ターゲット Map で使用される値
      関連事項:
    • getAsText

      @Nullable public StringSE getAsText()
      この実装は null を返し、適切なテキスト表現がないことを示します。
      次で指定:
      インターフェース PropertyEditorSEgetAsText 
      オーバーライド:
      クラス PropertyEditorSupportSEgetAsText