クラス DefaultContextCache

java.lang.ObjectSE
org.springframework.test.context.cache.DefaultContextCache
実装されたすべてのインターフェース:
ContextCache

public class DefaultContextCache extends ObjectSE implements ContextCache
ContextCache API のデフォルト実装。

最大サイズと最も最近使用されていない(LRU)エビクションポリシーで構成された同期された MapSE を使用して、ApplicationContext インスタンスをキャッシュします。

最大サイズは、コンストラクターの引数として指定するか、システムプロパティまたは "spring.test.context.cache.maxSize" という名前の Spring プロパティを介して設定できます。

導入:
2.5
作成者:
Sam Brannen, Juergen Hoeller
関連事項:
  • コンストラクターの詳細

  • メソッドの詳細

    • contains

      public boolean contains(MergedContextConfiguration key)
      インターフェースからコピーされた説明: ContextCache
      指定されたキーのキャッシュされたコンテキストがあるかどうかを確認します。
      次で指定:
      インターフェース ContextCachecontains 
      パラメーター:
      key - コンテキストキー (非 null)
      戻り値:
      true (キャッシュに指定されたキーのコンテキストが含まれている場合)
    • get

      インターフェースからコピーされた説明: ContextCache
      指定されたキーのキャッシュされた ApplicationContext を取得します。

      ヒット数とミス数はそれに応じて更新する必要があります。

      次で指定:
      インターフェース ContextCacheget 
      パラメーター:
      key - コンテキストキー (非 null)
      戻り値:
      対応する ApplicationContext インスタンス、またはキャッシュに見つからない場合は null 
      関連事項:
    • put

      public void put(MergedContextConfiguration key, ApplicationContext context)
      インターフェースからコピーされた説明: ContextCache
      特定のキーにある ApplicationContext インスタンスをキャッシュに明示的に追加します。これにより、カスタムの排除ポリシーが適用される可能性があります。
      次で指定:
      インターフェース ContextCacheput 
      パラメーター:
      key - コンテキストキー (非 null)
      context - ApplicationContext インスタンス (非 null)
    • remove

      public void remove(MergedContextConfiguration key, @Nullable DirtiesContext.HierarchyMode hierarchyMode)
      インターフェースからコピーされた説明: ContextCache
      指定されたキーを持つコンテキストをキャッシュから削除し、ConfigurableApplicationContext のインスタンスである場合は明示的に閉じます。

      一般的に、このメソッドは、キャッシュからコンテキストを適切に削除するために(たとえば、カスタムエビクションポリシーが原因で)、シングルトン Bean の状態が変更され、コンテキストとの今後の相互作用に影響を与える可能性がある場合に呼び出す必要があります。

      さらに、提供された HierarchyMode のセマンティクスを尊重する必要があります。詳細については、DirtiesContext.HierarchyMode の Javadoc を参照してください。

      次で指定:
      インターフェース ContextCacheremove 
      パラメーター:
      key - コンテキストキー。null
      hierarchyMode - 階層モード。コンテキストが階層の一部ではない場合、null である可能性があります
    • getFailureCount

      public int getFailureCount(MergedContextConfiguration key)
      インターフェースからコピーされた説明: ContextCache
      指定されたキーの失敗回数を取得します。

      失敗とは、指定されたキーの ApplicationContext をロードしようとして例外が発生することです。

      このメソッドのデフォルト実装は常に 0 を返します。具体的な実装では、このメソッドと ContextCache.incrementFailureCount(MergedContextConfiguration) を適切な動作でオーバーライドすることを強くお勧めします。Spring の標準 ContextContext 実装は、これらのメソッドを適切にオーバーライドすることに注意してください。

      次で指定:
      インターフェース ContextCachegetFailureCount 
      パラメーター:
      key - コンテキストキー。null
      関連事項:
    • incrementFailureCount

      public void incrementFailureCount(MergedContextConfiguration key)
      インターフェースからコピーされた説明: ContextCache
      指定されたキーの失敗回数を増やします。

      このメソッドのデフォルトの実装では何も行われません。具体的な実装では、このメソッドと ContextCache.getFailureCount(MergedContextConfiguration) を適切な動作でオーバーライドすることを強くお勧めします。Spring の標準 ContextContext 実装は、これらのメソッドを適切にオーバーライドすることに注意してください。

      次で指定:
      インターフェース ContextCacheincrementFailureCount 
      パラメーター:
      key - コンテキストキー。null
      関連事項:
    • size

      public int size()
      インターフェースからコピーされた説明: ContextCache
      現在キャッシュに格納されているコンテキストの数を確認します。

      キャッシュに Integer.MAX_VALUE 要素より多く含まれている場合、このメソッドは Integer.MAX_VALUE を返す必要があります。

      次で指定:
      インターフェース ContextCachesize 
    • getMaxSize

      public int getMaxSize()
      このキャッシュの最大サイズを取得します。
    • getParentContextCount

      public int getParentContextCount()
      インターフェースからコピーされた説明: ContextCache
      キャッシュ内で現在追跡されている親コンテキストの数を判別します。
      次で指定:
      インターフェース ContextCachegetParentContextCount 
    • getHitCount

      public int getHitCount()
      インターフェースからコピーされた説明: ContextCache
      このキャッシュの全体的なヒット数を取得します。

      ヒットとは、クエリされたキーに対して null 以外のコンテキストを返すキャッシュへのアクセスです。

      次で指定:
      インターフェース ContextCachegetHitCount 
    • getMissCount

      public int getMissCount()
      インターフェースからコピーされた説明: ContextCache
      このキャッシュの全体的なミス数を取得します。

      ミスとは、クエリされたキーの null コンテキストを返すキャッシュへのアクセスです。

      次で指定:
      インターフェース ContextCachegetMissCount 
    • reset

      public void reset()
      インターフェースからコピーされた説明: ContextCache
      統計を含め、このキャッシュによって維持されているすべての状態をリセットします。
      次で指定:
      インターフェース ContextCachereset 
      関連事項:
    • clear

      public void clear()
      インターフェースからコピーされた説明: ContextCache
      キャッシュからすべてのコンテキストをクリアし、コンテキスト階層情報もクリアします。
      次で指定:
      インターフェース ContextCacheclear 
    • clearStatistics

      public void clearStatistics()
      インターフェースからコピーされた説明: ContextCache
      キャッシュのヒットカウントミスカウントの統計をクリアします(つまり、カウンターをゼロにリセットします)。
      次で指定:
      インターフェース ContextCacheclearStatistics 
    • logStatistics

      public void logStatistics()
      インターフェースからコピーされた説明: ContextCache
      "org.springframework.test.context.cache" ロギングカテゴリを使用して、この ContextCache の統計を DEBUG レベルで記録します。

      次の情報がログに記録されます。

      次で指定:
      インターフェース ContextCachelogStatistics 
    • toString

      public StringSE toString()
      このキャッシュの実装型とその統計を含むテキスト文字列を生成します。

      このメソッドによって返される文字列には、logStatistics() の契約に準拠するために必要なすべての情報が含まれています。

      オーバーライド:
      クラス ObjectSEtoString 
      戻り値:
      統計を含む、このキャッシュの文字列表現