パッケージ org.springframework.core

クラス MethodIntrospector

java.lang.ObjectSE
org.springframework.core.MethodIntrospector

public final class MethodIntrospector extends ObjectSE
インターフェースと親クラスを含むメタデータ関連メソッドを徹底的に検索するためのアルゴリズムを定義すると同時に、パラメーター化されたメソッドや、インターフェースとクラスベースのプロキシで発生する一般的なシナリオも処理します。

通常、アノテーション付きハンドラーメソッドを見つけるために使用されますが、必ずしもそうとは限りません。

導入:
4.2.3
作成者:
Juergen Hoeller, Rossen Stoyanchev, Sam Brannen
  • メソッドの詳細

    • selectMethods

      public static <T> MapSE<MethodSE,T> selectMethods(ClassSE<?> targetType, MethodIntrospector.MetadataLookup<T> metadataLookup)
      関連するメタデータの検索に基づいて、指定されたターゲット型のメソッドを選択します。

      呼び出し元は、MethodIntrospector.MetadataLookup パラメーターを使用して対象のメソッドを定義し、関連するメタデータを結果マップに収集できます。

      パラメーター:
      targetType - メソッドを検索するターゲット型
      metadataLookup - 目的のメソッドをインスペクションする MethodIntrospector.MetadataLookup コールバック。一致がある場合は指定されたメソッドに関連付けられる null 以外のメタデータを返し、一致しない場合は null 
      戻り値:
      メタデータに関連付けられている選択されたメソッド(取得順)、または一致しない場合は空のマップ
    • selectMethods

      public static SetSE<MethodSE> selectMethods(ClassSE<?> targetType, ReflectionUtils.MethodFilter methodFilter)
      フィルターに基づいて、指定されたターゲット型のメソッドを選択します。

      呼び出し元は、MethodFilter パラメーターを使用して対象のメソッドを定義します。

      パラメーター:
      targetType - メソッドを検索するターゲット型
      methodFilter - 対象のハンドラーメソッドの認識を支援する MethodFilter 
      戻り値:
      選択したメソッド、または一致しない場合は空のセット
    • selectInvocableMethod

      public static MethodSE selectInvocableMethod(MethodSE method, ClassSE<?> targetType)
      ターゲット型で呼び出し可能なメソッドを選択します。ターゲット型で実際に公開されている場合は特定のメソッド自体、またはターゲット型のインターフェースの 1 つまたはターゲット型自体で対応するメソッドを選択します。

      ユーザーが宣言したインターフェースは、ターゲットクラスのメソッドに対応する関連メタデータを含む可能性が高いため、一致するものが推奨されます。

      パラメーター:
      method - チェックする方法
      targetType - メソッドを検索するターゲット型 (通常、インターフェースベースの JDK プロキシ)
      戻り値:
      ターゲット型の対応する呼び出し可能なメソッド
      例外:
      IllegalStateExceptionSE - 指定されたメソッドが指定されたターゲット型で起動できない場合 (通常はプロキシの不一致が原因です)