クラス ResourceHandlerRegistration

java.lang.ObjectSE
org.springframework.web.reactive.config.ResourceHandlerRegistration

public class ResourceHandlerRegistration extends ObjectSE
静的リソースハンドラーの作成と構成を支援します。
導入:
5.0
作成者:
Rossen Stoyanchev
  • コンストラクターの詳細

    • ResourceHandlerRegistration

      public ResourceHandlerRegistration(ResourceLoader resourceLoader, StringSE... pathPatterns)
      ResourceHandlerRegistration インスタンスを作成します。
      パラメーター:
      resourceLoader - String の場所を Resource に変換するためのリソースローダー
      pathPatterns - 1 つ以上のリソース URL パスパターン
  • メソッドの詳細

    • addResourceLocations

      public ResourceHandlerRegistration addResourceLocations(StringSE... resourceLocations)
      静的コンテンツを提供する 1 つ以上のリソースの場所を追加します。

      各場所は、有効なディレクトリを指している必要があります。複数の場所をコンマ区切りのリストとして指定できます。場所は、指定された順序で特定のリソースについてチェックされます。

      例: "/", "classpath:/META-INF/public-web-resources/" を使用すると、Web アプリケーションルートと、/META-INF/public-web-resources/ ディレクトリを含むクラスパス上の任意の JAR の両方からリソースを提供でき、Web アプリケーションルートのリソースが優先されます。

      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
    • setCacheControl

      public ResourceHandlerRegistration setCacheControl(CacheControl cacheControl)
      リソースハンドラーが使用する CacheControl を指定します。
      パラメーター:
      cacheControl - 使用する CacheControl 構成
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
    • setUseLastModified

      public ResourceHandlerRegistration setUseLastModified(boolean useLastModified)
      Resource.lastModified() 情報を使用して HTTP レスポンスを駆動するかどうかを設定します。

      この構成は、デフォルトで true に設定されています。

      パラメーター:
      useLastModified - 「最終変更」リソース情報を使用する必要があるかどうか
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
      導入:
      5.3
      関連事項:
    • setEtagGenerator

      public ResourceHandlerRegistration setEtagGenerator(@Nullable FunctionSE<Resource,StringSE> etagGenerator)
      レスポンスに書き込もうとしている Resource を考慮して、ETag 情報の作成に使用されるジェネレーター関数を構成します。

      この関数は、ServerWebExchange.checkNotModified(String) で引数として使用される String を返す必要があります。指定されたリソースに対して値を生成できない場合は null で引数として使用されます。

      パラメーター:
      etagGenerator - 使用する HTTP ETag ジェネレーター関数。
      導入:
      6.1
      関連事項:
    • setOptimizeLocations

      public ResourceHandlerRegistration setOptimizeLocations(boolean optimizeLocations)
      起動時の存在チェックで指定した場所を最適化するかどうかを設定し、存在しないディレクトリを事前にフィルタリングして、すべてのリソースアクセスでチェックする必要がないようにします。

      デフォルトは false です。これは、ディレクトリの存在を事前に公開できないディレクトリエントリのない zip ファイルに対する防御のためです。ディレクトリエントリとの一貫した jar レイアウトの場合に最適化されたアクセスのために、このフラグを true に切り替えます。

      パラメーター:
      optimizeLocations - 起動時の存在チェックでロケーションを最適化するかどうか
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
      導入:
      5.3.13
      関連事項:
    • resourceChain

      public ResourceChainRegistration resourceChain(boolean cacheResources)
      使用するリソースリゾルバーとトランスフォーマーのチェーンを構成します。これは、たとえばバージョン戦略をリソース URL に適用する場合に役立ちます。

      このメソッドが呼び出されない場合、デフォルトでは、構成されたロケーションのリソースに URL パスを一致させるために、単純な PathResourceResolver のみが使用されます。

      パラメーター:
      cacheResources - リソース解決の結果をキャッシュするかどうか。本番環境ではこれを "true" に設定することをお勧めします (特にバージョン戦略を適用する場合、開発では "false" )
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
    • resourceChain

      public ResourceChainRegistration resourceChain(boolean cacheResources, Cache cache)
      使用するリソースリゾルバーとトランスフォーマーのチェーンを構成します。これは、たとえばバージョン戦略をリソース URL に適用する場合に役立ちます。

      このメソッドが呼び出されない場合、デフォルトでは、構成されたロケーションのリソースに URL パスを一致させるために、単純な PathResourceResolver のみが使用されます。

      パラメーター:
      cacheResources - リソース解決の結果をキャッシュするかどうか。本番環境ではこれを "true" に設定することをお勧めします(特にバージョン戦略を適用する場合は開発で "false" を使用することをお勧めします)
      cache - 解決および変換されたリソースの保存に使用するキャッシュ。デフォルトでは、ConcurrentMapCache が使用されます。リソースは直列化できず、アプリケーションホストに依存する可能性があるため、分散キャッシュを使用するのではなく、メモリ内キャッシュを使用する必要があります。
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
    • setMediaTypes

      public void setMediaTypes(MapSE<StringSE,MediaType> mediaTypes)
      静的 Resource のファイル名から抽出されたファイル拡張子と、レスポンスに使用するメディア型との間にマッピングを追加します。

      マッピングは MediaTypeFactory.getMediaType(Resource) を介して決定することもできるため、通常、この方法を使用する必要はありません。

      パラメーター:
      mediaTypes - メディア型のマッピング
      導入:
      5.3.2
    • getPathPatterns

      protected StringSE[] getPathPatterns()
      リソースハンドラーの URL パスパターンを返します。
    • getRequestHandler

      protected ResourceWebHandler getRequestHandler()
      ResourceWebHandler インスタンスを返します。