クラス WebContentGenerator
java.lang.ObjectSE
org.springframework.context.support.ApplicationObjectSupport
org.springframework.web.context.support.WebApplicationObjectSupport
org.springframework.web.servlet.support.WebContentGenerator
- 実装されているすべてのインターフェース:
Aware, ApplicationContextAware, ServletContextAware
- 既知の直属サブクラス
AbstractController, AbstractHandlerMethodAdapter, ResourceHttpRequestHandler, WebContentInterceptor
AbstractController や WebContentInterceptor など、あらゆる種類の Web コンテンツジェネレーターに便利なスーパークラス。独自の HandlerAdapter を持つカスタムハンドラーにも使用できます。HTTP キャッシュ制御オプションをサポートします。対応する HTTP ヘッダーの使用は、"cacheSeconds" および "cacheControl" プロパティを介して制御できます。
- 作成者:
- Rod Johnson, Juergen Hoeller, Brian Clozel, Rossen Stoyanchev
- 関連事項:
フィールドのサマリー
フィールド修飾子と型フィールド説明protected static final StringSEstatic final StringSEHTTP メソッド "GET"。static final StringSEHTTP メソッド "HEAD"。static final StringSEHTTP メソッド "POST"。クラス ApplicationObjectSupport から継承されたフィールド
loggerコンストラクターの概要
コンストラクターコンストラクター説明HTTP メソッド GET、HEAD、POST をデフォルトでサポートする新しい WebContentGenerator を作成します。WebContentGenerator(boolean restrictDefaultSupportedMethods) 新しい WebContentGenerator を作成します。WebContentGenerator(StringSE... supportedMethods) 新しい WebContentGenerator を作成します。方法の概要
修飾子と型メソッド説明protected final voidapplyCacheControl(jakarta.servlet.http.HttpServletResponse response, CacheControl cacheControl) 指定された設定に従って HTTP Cache-Control ヘッダーを設定します。protected final voidapplyCacheSeconds(jakarta.servlet.http.HttpServletResponse response, int cacheSeconds) 指定されたキャッシュ秒を適用し、対応する HTTP ヘッダーを生成します。protected final voidcheckRequest(jakarta.servlet.http.HttpServletRequest request) サポートされているメソッドと必要なセッションがある場合は、指定されたリクエストを確認してください。構成済みのsupported methodsに基づく HTTP OPTIONS リクエストへのレスポンスで使用する "Allow" ヘッダー値を返します。サポートされるメソッドとして存在しない場合でも、リストに "OPTIONS" を自動的に追加します。final @Nullable CacheControlCache-Control HTTP レスポンスヘッダーを作成するCacheControlインスタンスを取得します。final intコンテンツがキャッシュされる秒数を返します。このコンテンツジェネレーターがサポートする HTTP メソッドを返します。"Vary" レスポンスヘッダーの構成済みリクエストヘッダー名を返します。final booleanリクエストの処理にセッションが必要かどうかを返します。protected final voidprepareResponse(jakarta.servlet.http.HttpServletResponse response) このジェネレーターの設定に従って、指定されたレスポンスを準備します。final voidsetCacheControl(@Nullable CacheControl cacheControl) CacheControlインスタンスを設定して、Cache-Control HTTP レスポンスヘッダーを構築します。final voidsetCacheSeconds(int seconds) キャッシュ関連の HTTP ヘッダーをレスポンスに書き込むことにより、指定された秒数の間コンテンツをキャッシュします。秒 == -1(デフォルト値): 生成キャッシュ関連のヘッダーなし == 0: "Cache-Control:no-store" 秒を超えるキャッシュを防ぎます。> 0: "Cache-Control:max-age = seconds" はコンテンツのキャッシュを要求しますfinal voidsetRequireSession(boolean requireSession) リクエストを処理するためにセッションが必要かどうかを設定します。final voidsetSupportedMethods(StringSE @Nullable... methods) このコンテンツジェネレーターがサポートする HTTP メソッドを設定します。final voidsetVaryByRequestHeaders(StringSE @Nullable... varyByRequestHeaders) 1 つ以上のリクエストヘッダー名 (たとえば、"Accept-Language" ) を構成して、"Vary" レスポンスヘッダーに追加し、レスポンスがコンテンツネゴシエーションの対象であり、指定されたリクエストヘッダーの値に基づいて変更されることをクライアントに通知します。クラス WebApplicationObjectSupport から継承されたメソッド
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
フィールドの詳細
METHOD_GET
METHOD_HEAD
METHOD_POST
HEADER_CACHE_CONTROL
- 関連事項:
コンストラクターの詳細
WebContentGenerator
public WebContentGenerator()HTTP メソッド GET、HEAD、POST をデフォルトでサポートする新しい WebContentGenerator を作成します。WebContentGenerator
public WebContentGenerator(boolean restrictDefaultSupportedMethods) 新しい WebContentGenerator を作成します。- パラメーター:
restrictDefaultSupportedMethods- このジェネレーターがデフォルトで HTTP メソッド GET、HEAD、POST をサポートする必要がある場合はtrue、制限されていない場合はfalse
WebContentGenerator
新しい WebContentGenerator を作成します。- パラメーター:
supportedMethods- このコンテンツジェネレーターでサポートされている HTTP メソッド
メソッドの詳細
setSupportedMethods
getSupportedMethods
getAllowHeader
構成済みのsupported methodsに基づく HTTP OPTIONS リクエストへのレスポンスで使用する "Allow" ヘッダー値を返します。サポートされるメソッドとして存在しない場合でも、リストに "OPTIONS" を自動的に追加します。これは、checkRequest(HttpServletRequest)を呼び出す前に HTTP OPTIONS リクエストが処理される限り、サブクラスがサポートされているメソッドとして "OPTIONS" を明示的にリストする必要がないことを意味します。- 導入:
- 4.3
setRequireSession
public final void setRequireSession(boolean requireSession) リクエストを処理するためにセッションが必要かどうかを設定します。isRequireSession
public final boolean isRequireSession()リクエストの処理にセッションが必要かどうかを返します。setCacheControl
CacheControlインスタンスを設定して、Cache-Control HTTP レスポンスヘッダーを構築します。- 導入:
- 4.2
getCacheControl
Cache-Control HTTP レスポンスヘッダーを作成するCacheControlインスタンスを取得します。- 導入:
- 4.2
setCacheSeconds
public final void setCacheSeconds(int seconds) レスポンスにキャッシュ関連の HTTP ヘッダーを書き込むことにより、指定された秒数の間コンテンツをキャッシュします。- 秒 == -1(デフォルト値): 生成キャッシュ関連のヘッダーなし
- 秒 == 0: 「キャッシュ制御: no-store」はキャッシュを防ぎます
- 秒> 0: 「キャッシュ制御: max-age = seconds」はコンテンツのキャッシュを要求します
より具体的なニーズについては、カスタム
CacheControlを使用する必要があります。- 関連事項:
getCacheSeconds
public final int getCacheSeconds()コンテンツがキャッシュされる秒数を返します。setVaryByRequestHeaders
レスポンスがコンテンツネゴシエーションの対象であり、指定されたリクエストヘッダーの値に基づいて変更されることをクライアントに通知するために、"Vary" レスポンスヘッダーに追加する 1 つ以上のリクエストヘッダー名 ( "Accept-Language" など) を構成します。構成されたリクエストヘッダー名は、レスポンス "Vary" ヘッダーにまだ存在しない場合にのみ追加されます。- パラメーター:
varyByRequestHeaders- 1 つ以上のリクエストヘッダー名- 導入:
- 4.3
getVaryByRequestHeaders
checkRequest
protected final void checkRequest(jakarta.servlet.http.HttpServletRequest request) throws jakarta.servlet.ServletException サポートされているメソッドと必要なセッションがある場合は、指定されたリクエストを確認してください。- パラメーター:
request- 現在の HTTP リクエスト- 例外:
jakarta.servlet.ServletException- チェックが失敗したためにリクエストを処理できない場合- 導入:
- 4.2
prepareResponse
protected final void prepareResponse(jakarta.servlet.http.HttpServletResponse response) このジェネレーターの設定に従って、指定されたレスポンスを準備します。このジェネレーターに指定されたキャッシュ秒数を適用します。- パラメーター:
response- 現在の HTTP レスポンス- 導入:
- 4.2
applyCacheControl
protected final void applyCacheControl(jakarta.servlet.http.HttpServletResponse response, CacheControl cacheControl) 指定された設定に従って HTTP Cache-Control ヘッダーを設定します。- パラメーター:
response- 現在の HTTP レスポンスcacheControl- 事前設定されたキャッシュ制御設定- 導入:
- 4.2
applyCacheSeconds
protected final void applyCacheSeconds(jakarta.servlet.http.HttpServletResponse response, int cacheSeconds) 指定されたキャッシュ秒を適用し、対応する HTTP ヘッダーを生成します。つまり、正の値の場合は指定された秒数のキャッシュを許可し、0 の値が指定された場合はキャッシュを禁止します。ブラウザーにリソースの再検証を指示しません。- パラメーター:
response- 現在の HTTP レスポンスcacheSeconds- レスポンスがキャッシュ可能になる未来の正の秒数、キャッシュを防ぐための 0