クラス ResourceHandlerRegistration

java.lang.ObjectSE
org.springframework.web.servlet.config.annotation.ResourceHandlerRegistration

public class ResourceHandlerRegistration extends ObjectSE
リソースハンドラーの作成に必要な情報をカプセル化します。
導入:
3.1
作成者:
Rossen Stoyanchev, Keith Donald, Brian Clozel
  • コンストラクターの詳細

    • ResourceHandlerRegistration

      public ResourceHandlerRegistration(StringSE... pathPatterns)
      ResourceHandlerRegistration インスタンスを作成します。
      パラメーター:
      pathPatterns - 1 つ以上のリソース URL パスパターン
  • メソッドの詳細

    • addResourceLocations

      public ResourceHandlerRegistration addResourceLocations(StringSE... locations)
      静的コンテンツを提供する 1 つ以上のリソースの場所を追加します。各場所は有効なディレクトリを指している必要があります。複数の場所をコンマ区切りリストとして指定できます。指定されたリソースについて、指定された順序で場所がチェックされます。

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

      URL-based resources(ファイル、HTTP URL など)の場合、このメソッドは、URL に関連付けられた文字セットを示す特別なプレフィックスをサポートしているため、それに追加された相対パスを正しくエンコードできます。[charset=Windows-31J]https://example.org/path

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

      public ResourceHandlerRegistration addResourceLocations(Resource... locations)
      事前に解決された Resource 参照に基づいて、静的リソースを提供する場所を構成します。
      パラメーター:
      locations - 使用するリソースの場所
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
      導入:
      5.3.3
    • setCachePeriod

      public ResourceHandlerRegistration setCachePeriod(IntegerSE cachePeriod)
      リソースハンドラーによって提供されるリソースのキャッシュ期間を秒単位で指定します。デフォルトでは、キャッシュヘッダーは送信されず、最終変更のタイムスタンプのみに依存します。キャッシュを防止するキャッシュヘッダーを送信するには 0 に設定し、指定された max-age 値でキャッシュヘッダーを送信するには正の秒数に設定します。
      パラメーター:
      cachePeriod - リソースをキャッシュする時間(秒)
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
    • setCacheControl

      public ResourceHandlerRegistration setCacheControl(CacheControl cacheControl)
      リソースハンドラーが使用する CacheControl を指定します。

      ここでカスタム値を設定すると、setCachePeriod(java.lang.Integer) で設定された構成が上書きされます。

      パラメーター:
      cacheControl - 使用する CacheControl 構成
      戻り値:
      チェーンされたメソッド呼び出しのための同じ ResourceHandlerRegistration インスタンス
      導入:
      4.2
    • 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 インスタンス
      導入:
      4.1
    • resourceChain

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

      このメソッドが呼び出されない場合、デフォルトでは、構成された場所にあるリソースへの URL パスを照合するために、単純な PathResourceResolver のみが使用されます。

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

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

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