パッケージ org.springframework.beans

インターフェース PropertyAccessor

すべての既知のサブインターフェース:
BeanWrapperConfigurablePropertyAccessor
すべての既知の実装クラス:
AbstractNestablePropertyAccessorAbstractPropertyAccessorBeanWrapperImplDirectFieldAccessor

public interface PropertyAccessor
名前付きプロパティ(オブジェクトの Bean プロパティやオブジェクトのフィールドなど)にアクセスできるクラスの共通インターフェース。

BeanWrapper の基本インターフェースとして機能します。

導入:
1.1
作成者:
Juergen Hoeller
関連事項:
  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final StringSE
    ネストされたプロパティのパス区切り。
    static final char
    ネストされたプロパティのパス区切り。
    static final StringSE
    "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの開始を示すマーカー。
    static final char
    "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの開始を示すマーカー。
    static final StringSE
    "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの終わりを示すマーカー。
    static final char
    "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの終わりを示すマーカー。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    指定されたプロパティのプロパティ型を決定し、プロパティ記述子をチェックするか、インデックス付きまたはマップされた要素の場合は値をチェックします。
    指定されたプロパティの型記述子を返します。できれば読み取りメソッドから、書き込みメソッドにフォールバックしてください。
    指定されたプロパティの現在の値を取得します。
    boolean
    指定したプロパティが読み取り可能かどうかを判断します。
    boolean
    指定されたプロパティが書き込み可能かどうかを判断します。
    void
    setPropertyValue(StringSE propertyName, ObjectSE value)
    指定した値を現在のプロパティ値として設定します。
    void
    指定した値を現在のプロパティ値として設定します。
    void
    マップからバッチ更新を実行します。
    void
    バッチ更新を実行するための推奨される方法。
    void
    setPropertyValues(PropertyValues pvs, boolean ignoreUnknown)
    動作をより詳細に制御してバッチ更新を実行します。
    void
    setPropertyValues(PropertyValues pvs, boolean ignoreUnknown, boolean ignoreInvalid)
    動作を完全に制御してバッチ更新を実行します。
  • フィールドの詳細

    • NESTED_PROPERTY_SEPARATOR

      static final StringSE NESTED_PROPERTY_SEPARATOR
      ネストされたプロパティのパスセパレータ。通常の Java の規則に従います。getFoo().getBar() は "foo.bar" になります。
      関連事項:
    • NESTED_PROPERTY_SEPARATOR_CHAR

      static final char NESTED_PROPERTY_SEPARATOR_CHAR
      ネストされたプロパティのパスセパレータ。通常の Java の規則に従います。getFoo().getBar() は "foo.bar" になります。
      関連事項:
    • PROPERTY_KEY_PREFIX

      static final StringSE PROPERTY_KEY_PREFIX
      "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの開始を示すマーカー。
      関連事項:
    • PROPERTY_KEY_PREFIX_CHAR

      static final char PROPERTY_KEY_PREFIX_CHAR
      "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの開始を示すマーカー。
      関連事項:
    • PROPERTY_KEY_SUFFIX

      static final StringSE PROPERTY_KEY_SUFFIX
      "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの終わりを示すマーカー。
      関連事項:
    • PROPERTY_KEY_SUFFIX_CHAR

      static final char PROPERTY_KEY_SUFFIX_CHAR
      "person.addresses[0]" のようなインデックス付きまたはマップされたプロパティのプロパティキーの終わりを示すマーカー。
      関連事項:
  • メソッドの詳細

    • isReadableProperty

      boolean isReadableProperty(StringSE propertyName)
      指定したプロパティが読み取り可能かどうかを判断します。

      プロパティが存在しない場合、false を返します。

      パラメーター:
      propertyName - チェックするプロパティ (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      戻り値:
      プロパティが読み取り可能かどうか
    • isWritableProperty

      boolean isWritableProperty(StringSE propertyName)
      指定されたプロパティが書き込み可能かどうかを判断します。

      プロパティが存在しない場合、false を返します。

      パラメーター:
      propertyName - チェックするプロパティ (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      戻り値:
      プロパティが書き込み可能かどうか
    • getPropertyType

      @Nullable ClassSE<?> getPropertyType(StringSE propertyName) throws BeansException
      指定されたプロパティのプロパティ型を決定し、プロパティ記述子をチェックするか、インデックス付きまたはマップされた要素の場合は値をチェックします。
      パラメーター:
      propertyName - チェックするプロパティ (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      戻り値:
      特定のプロパティのプロパティ型、または決定できない場合は null 
      例外:
      PropertyAccessException - プロパティは有効だったが、アクセサーメソッドが失敗した場合
      BeansException
    • getPropertyTypeDescriptor

      @Nullable TypeDescriptor getPropertyTypeDescriptor(StringSE propertyName) throws BeansException
      指定されたプロパティの型記述子を返します。できれば読み取りメソッドから、書き込みメソッドにフォールバックしてください。
      パラメーター:
      propertyName - チェックするプロパティ (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      戻り値:
      特定のプロパティのプロパティ型、または決定できない場合は null 
      例外:
      PropertyAccessException - プロパティは有効だったが、アクセサーメソッドが失敗した場合
      BeansException
    • getPropertyValue

      @Nullable ObjectSE getPropertyValue(StringSE propertyName) throws BeansException
      指定されたプロパティの現在の値を取得します。
      パラメーター:
      propertyName - 値を取得するプロパティの名前 (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      戻り値:
      プロパティの値
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが読めない場合
      PropertyAccessException - プロパティは有効だったが、アクセサーメソッドが失敗した場合
      BeansException
    • setPropertyValue

      void setPropertyValue(StringSE propertyName, @Nullable ObjectSE value) throws BeansException
      指定した値を現在のプロパティ値として設定します。
      パラメーター:
      propertyName - 値を設定するプロパティの名前 (ネストされたパスおよび / またはインデックス付き / マップされたプロパティ)
      value - 新しい価値
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyAccessException - プロパティは有効であるが、アクセサーメソッドが失敗したか、型の不一致が発生した場合
      BeansException
    • setPropertyValue

      void setPropertyValue(PropertyValue pv) throws BeansException
      指定した値を現在のプロパティ値として設定します。
      パラメーター:
      pv - 新しいプロパティ値を含むオブジェクト
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyAccessException - プロパティは有効であるが、アクセサーメソッドが失敗したか、型の不一致が発生した場合
      BeansException
    • setPropertyValues

      void setPropertyValues(MapSE<?,?> map) throws BeansException
      マップからバッチ更新を実行します。

      PropertyValues からの一括更新はより強力です: この方法は便宜上提供されています。動作は setPropertyValues(PropertyValues) メソッドの動作と同じになります。

      パラメーター:
      map - プロパティを取得するマップ。プロパティ名をキーとするプロパティ値オブジェクトを含みます
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyBatchUpdateException - バッチ更新中に特定のプロパティに対して 1 つ以上の PropertyAccessExceptions が発生した場合。この例外には、個々の PropertyAccessExceptions がすべてバンドルされています。他のすべてのプロパティは正常に更新されます。
      BeansException
    • setPropertyValues

      void setPropertyValues(PropertyValues pvs) throws BeansException
      バッチ更新を実行するための推奨される方法。

      バッチ更新の実行は、単一の更新の実行とは異なります。このクラスの実装は、 回復可能なエラー(型の不一致など、無効なフィールド名ではないなど)が発生した場合にプロパティを更新し続けます。個々のエラーをすべて含む PropertyBatchUpdateException この例外を後で調べて、すべてのバインディングエラーを確認できます。正常に更新されたプロパティは変更されたままです。

      不明なフィールドや無効なフィールドは許可されません。

      パラメーター:
      pvs - ターゲットオブジェクトに設定する PropertyValues
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyBatchUpdateException - バッチ更新中に特定のプロパティに対して 1 つ以上の PropertyAccessExceptions が発生した場合。この例外には、個々の PropertyAccessExceptions がすべてバンドルされています。他のすべてのプロパティは正常に更新されます。
      BeansException
      関連事項:
    • setPropertyValues

      void setPropertyValues(PropertyValues pvs, boolean ignoreUnknown) throws BeansException
      動作をより詳細に制御してバッチ更新を実行します。

      バッチ更新の実行は、単一の更新の実行とは異なります。このクラスの実装は、 回復可能なエラー(型の不一致など、無効なフィールド名ではないなど)が発生した場合にプロパティを更新し続けます。個々のエラーをすべて含む PropertyBatchUpdateException この例外を後で調べて、すべてのバインディングエラーを確認できます。正常に更新されたプロパティは変更されたままです。

      パラメーター:
      pvs - ターゲットオブジェクトに設定する PropertyValues
      ignoreUnknown - 未知のプロパティを無視するべきか (Bean にはありません)
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyBatchUpdateException - バッチ更新中に特定のプロパティに対して 1 つ以上の PropertyAccessExceptions が発生した場合。この例外には、個々の PropertyAccessExceptions がすべてバンドルされています。他のすべてのプロパティは正常に更新されます。
      BeansException
      関連事項:
    • setPropertyValues

      void setPropertyValues(PropertyValues pvs, boolean ignoreUnknown, boolean ignoreInvalid) throws BeansException
      動作を完全に制御してバッチ更新を実行します。

      バッチ更新の実行は、単一の更新の実行とは異なります。このクラスの実装は、 回復可能なエラー(型の不一致など、無効なフィールド名ではないなど)が発生した場合にプロパティを更新し続けます。個々のエラーをすべて含む PropertyBatchUpdateException この例外を後で調べて、すべてのバインディングエラーを確認できます。正常に更新されたプロパティは変更されたままです。

      パラメーター:
      pvs - ターゲットオブジェクトに設定する PropertyValues
      ignoreUnknown - 未知のプロパティを無視するべきか (Bean にはありません)
      ignoreInvalid - 無効なプロパティを無視する必要があります (見つかりましたがアクセスできません)
      例外:
      InvalidPropertyException - そのようなプロパティがない場合、またはプロパティが書き込み可能でない場合
      PropertyBatchUpdateException - バッチ更新中に特定のプロパティに対して 1 つ以上の PropertyAccessExceptions が発生した場合。この例外には、個々の PropertyAccessExceptions がすべてバンドルされています。他のすべてのプロパティは正常に更新されます。
      BeansException