クラス RequestMappingHandlerMapping

実装されたすべてのインターフェース:
AwareBeanNameAwareInitializingBeanApplicationContextAwareEmbeddedValueResolverAwareOrderedHandlerMapping

public class RequestMappingHandlerMapping extends RequestMappingInfoHandlerMapping implements EmbeddedValueResolverAware
型レベルおよびメソッドレベルの @RequestMapping および @HttpExchange アノテーションから RequestMappingInfo インスタンスを作成する RequestMappingInfoHandlerMapping の拡張機能。
導入:
5.0
作成者:
Rossen Stoyanchev, Sam Brannen, Olga Maciaszek-Sharma
  • コンストラクターの詳細

    • RequestMappingHandlerMapping

      public RequestMappingHandlerMapping()
  • メソッドの詳細

    • setPathPrefixes

      public void setPathPrefixes(MapSE<StringSE,PredicateSE<ClassSE<?>>> prefixes)
      コントローラーメソッドに適用するパスプレフィックスを構成します。

      プレフィックスは、コントローラー型がマップ内の対応する Predicate と一致するすべての @RequestMapping メソッドおよび @HttpExchange メソッドのマッピングを強化するために使用されます。入力マップの順序が予測可能であると仮定して、最初に一致する述語の接頭辞が使用されます。

      HandlerTypePredicate を使用してコントローラーをグループ化することを検討してください。

      パラメーター:
      prefixes - キーとしてパス接頭辞を持つマップ
      導入:
      5.1
      関連事項:
    • getPathPrefixes

      public MapSE<StringSE,PredicateSE<ClassSE<?>>> getPathPrefixes()
      構成されたパスは、読み取り専用の、おそらく空のマップとしてプレフィックスします。
      導入:
      5.1
    • setContentTypeResolver

      public void setContentTypeResolver(RequestedContentTypeResolver contentTypeResolver)
      リクエストされたメディア型を判別するために使用する RequestedContentTypeResolver を設定します。設定されていない場合、デフォルトのコンストラクターが使用されます。
    • getContentTypeResolver

      public RequestedContentTypeResolver getContentTypeResolver()
      設定された RequestedContentTypeResolver を返します。
    • setEmbeddedValueResolver

      public void setEmbeddedValueResolver(StringValueResolver resolver)
      インターフェースからコピーされた説明: EmbeddedValueResolverAware
      StringValueResolver を設定して、埋め込まれた定義値の解決に使用します。
      次で指定:
      インターフェース EmbeddedValueResolverAwaresetEmbeddedValueResolver 
    • afterPropertiesSet

      public void afterPropertiesSet()
      クラスからコピーされた説明: AbstractHandlerMethodMapping
      初期化時にハンドラーメソッドを検出します。
      次で指定:
      インターフェース InitializingBeanafterPropertiesSet 
      オーバーライド:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>afterPropertiesSet 
    • isHandler

      protected boolean isHandler(ClassSE<?> beanType)
      指定された型がハンドラーメソッドを持つハンドラーであるかどうか。ハンドラーに型レベルの @Controller アノテーションが必要です。
      次で指定:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>isHandler 
      パラメーター:
      beanType - チェックされている Bean の型
      戻り値:
      これがハンドラー型の場合は "true"、そうでない場合は "false"。
    • getMappingForMethod

      @Nullable protected RequestMappingInfo getMappingForMethod(MethodSE method, ClassSE<?> handlerType)
      型レベルおよびメソッドレベルの @RequestMapping および @HttpExchange アノテーションを使用して RequestMappingInfo を作成します。
      次で指定:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>getMappingForMethod 
      パラメーター:
      method - マッピングを提供する方法
      handlerType - ハンドラー型、場合によってはメソッドの宣言クラスのサブ型
      戻り値:
      作成された RequestMappingInfo、またはメソッドに @RequestMapping または @HttpExchange アノテーションがない場合は null 
      関連事項:
    • getCustomTypeCondition

      @Nullable protected RequestCondition<?> getCustomTypeCondition(ClassSE<?> handlerType)
      カスタムの型レベルのリクエスト条件を提供する protected メソッド。

      カスタム RequestCondition は、カスタムリクエスト条件を組み合わせて比較できるようにするために、このメソッドへのすべての呼び出しから同じ条件型が返される限り、任意の型にすることができます。

      カスタム条件型用に AbstractRequestCondition を継承し、CompositeRequestCondition を使用して複数のカスタム条件を提供することを検討してください。

      パラメーター:
      handlerType - 条件を作成するハンドラー型
      戻り値:
      条件、または null
    • getCustomMethodCondition

      @Nullable protected RequestCondition<?> getCustomMethodCondition(MethodSE method)
      カスタムのメソッドレベルのリクエスト条件を提供する protected メソッド。

      カスタム RequestCondition は、カスタムリクエスト条件を組み合わせて比較できるようにするために、このメソッドへのすべての呼び出しから同じ条件型が返される限り、任意の型にすることができます。

      カスタム条件型用に AbstractRequestCondition を継承し、CompositeRequestCondition を使用して複数のカスタム条件を提供することを検討してください。

      パラメーター:
      method - 条件を作成するハンドラーメソッド
      戻り値:
      条件、または null
    • createRequestMappingInfo

      protected RequestMappingInfo createRequestMappingInfo(RequestMapping requestMapping, @Nullable RequestCondition<?> customCondition)
      提供された @RequestMapping アノテーション、メタアノテーション、またはアノテーション階層内でアノテーション属性をマージした合成結果から RequestMappingInfo を作成します。
    • createRequestMappingInfo

      protected RequestMappingInfo createRequestMappingInfo(HttpExchange httpExchange, @Nullable RequestCondition<?> customCondition)
      提供された @HttpExchange アノテーション、メタアノテーション、またはアノテーション階層内でアノテーション属性をマージした合成結果から RequestMappingInfo を作成します。
      導入:
      6.1
    • resolveEmbeddedValuesInPatterns

      protected StringSE[] resolveEmbeddedValuesInPatterns(StringSE[] patterns)
      指定されたパターンの配列のプレースホルダー値を解決します。
      戻り値:
      更新されたパターンを持つ新しい配列
    • registerMapping

      public void registerMapping(RequestMappingInfo mapping, ObjectSE handler, MethodSE method)
      クラスからコピーされた説明: AbstractHandlerMethodMapping
      指定されたマッピングを登録します。

      このメソッドは、初期化が完了した後、実行時に呼び出すことができます。

      オーバーライド:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>registerMapping 
      パラメーター:
      mapping - ハンドラーメソッドのマッピング
      handler - ハンドラー
      method - メソッド
    • registerHandlerMethod

      protected void registerHandlerMethod(ObjectSE handler, MethodSE method, RequestMappingInfo mapping)
      クラスからコピーされた説明: AbstractHandlerMethodMapping
      ハンドラーメソッドとその一意のマッピングを登録します。検出された各ハンドラーメソッドに対して起動時に呼び出されます。
      オーバーライド:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>registerHandlerMethod 
      パラメーター:
      handler - ハンドラーまたはハンドラーインスタンスの Bean 名
      method - 登録する方法
      mapping - ハンドラーメソッドに関連付けられたマッピング条件
    • initCorsConfiguration

      @Nullable protected CorsConfiguration initCorsConfiguration(ObjectSE handler, MethodSE method, RequestMappingInfo mappingInfo)
      クラスからコピーされた説明: AbstractHandlerMethodMapping
      マッピングの CORS 設定を抽出して返します。
      オーバーライド:
      クラス AbstractHandlerMethodMapping<RequestMappingInfo>initCorsConfiguration