クラス RedisConnectionUtils

java.lang.ObjectSE
org.springframework.data.redis.core.RedisConnectionUtils

public abstract class RedisConnectionUtils extends ObjectSE
RedisConnectionFactory から RedisConnection を取得するための静的メソッドを提供するヘルパークラス。Spring が管理するトランザクション RedisConnections の特別なサポートが含まれています。AbstractPlatformTransactionManager によって管理されています ..

Spring の RedisTemplate によって内部的に使用されます。アプリケーションコードで直接使用することもできます。

作成者:
Costin Leau, Christoph Strobl, Thomas Darimont, Mark Paluch
関連事項:
  • コンストラクターの詳細

    • RedisConnectionUtils

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

    • bindConnection

      public static RedisConnection bindConnection(RedisConnectionFactory factory)
      指定された RedisConnectionFactory から RedisConnection を取得し、クロージャスコープで使用される現在のスレッドに接続をバインドします(まだバインドされていない場合)。トランザクションにバインドされた接続を再利用することで進行中のトランザクションを考慮し、再入可能な接続の取得を許可します。進行中の可能性のあるトランザクションに接続をバインドしません。
      パラメーター:
      factory - 接続ファクトリ
      戻り値:
      トランザクションサポートのない新しい Redis 接続。
    • bindConnection

      public static RedisConnection bindConnection(RedisConnectionFactory factory, boolean transactionSupport)
      指定された RedisConnectionFactory から RedisConnection を取得し、クロージャスコープで使用される現在のスレッドに接続をバインドします(まだバインドされていない場合)。トランザクションにバインドされた接続を再利用することで進行中のトランザクションを考慮し、再入可能な接続の取得を許可します。transactionSupport が有効になっている場合に接続がまだバインドされていない場合は、接続を進行中のトランザクションにもバインドします。
      パラメーター:
      factory - 接続ファクトリ。
      transactionSupport - トランザクションサポートが有効かどうか。
      戻り値:
      リクエストされた場合、トランザクションサポートを備えた新しい Redis 接続。
    • getConnection

      public static RedisConnection getConnection(RedisConnectionFactory factory)
      指定された RedisConnectionFactory から RedisConnection を取得します。現在のトランザクション(トランザクションマネージャーを使用している場合)または現在のスレッド(接続をクロージャスコープにバインドしている場合)にバインドされている既存の接続を認識します。新しく作成された接続を進行中のトランザクションにバインドしません。
      パラメーター:
      factory - 接続を作成するための接続ファクトリ。
      戻り値:
      トランザクション管理のないアクティブな Redis 接続。
    • getConnection

      public static RedisConnection getConnection(RedisConnectionFactory factory, boolean transactionSupport)
      指定された RedisConnectionFactory から RedisConnection を取得します。現在のトランザクション(トランザクションマネージャーを使用している場合)または現在のスレッド(接続をクロージャスコープにバインドしている場合)にバインドされている既存の接続を認識します。
      パラメーター:
      factory - 接続を作成するための接続ファクトリ。
      transactionSupport - トランザクションサポートが有効かどうか。
      戻り値:
      リクエストされた場合、トランザクション管理を備えたアクティブな Redis 接続。
    • doGetConnection

      public static RedisConnection doGetConnection(RedisConnectionFactory factory, boolean allowCreate, boolean bind, boolean transactionSupport)
      実際には、指定された RedisConnectionFactory から RedisConnection を取得します。現在のトランザクション(トランザクションマネージャーを使用している場合)または現在のスレッド(接続をクロージャスコープにバインドしている場合)にバインドされている既存の接続を認識します。それ以外の場合、allowCreate が true の場合、新しい RedisConnection が作成されます。この方法では、RedisConnectionUtils.RedisConnectionHolder が参照カウントを追跡するため、再入可能になります。
      パラメーター:
      factory - 接続を作成するための接続ファクトリ。
      allowCreate - 現在のスレッドの接続が見つからない場合に、新しい(バインドされていない)接続を作成する必要があるかどうか。
      bind - スレッドが作成された場合は、接続をスレッドにバインドします。
      transactionSupport - トランザクションサポートが有効かどうか。
      戻り値:
      アクティブな Redis 接続。
    • releaseConnection

      public static void releaseConnection(@Nullable RedisConnection conn, RedisConnectionFactory factory)
      外部で管理されていない場合(つまり、トランザクションにバインドされていない場合)、指定されたファクトリを介して作成された指定された RedisConnection を閉じます。
      パラメーター:
      conn - Redis 接続を閉じます。
      factory - 接続が作成された Redis ファクトリ。
    • unbindConnection

      public static void unbindConnection(RedisConnectionFactory factory)
      指定されたファクトリに関連付けられている接続(存在する場合)をクロージャスコープからバインド解除して閉じます。進行中のトランザクションを考慮して、トランザクションにバインドされた接続が閉じられず、クロージャスコープにバインドされた接続を再入可能にします。最も外側の呼び出しのみが接続の解放と終了につながります。
      パラメーター:
      factory - Redis ファクトリ
    • isConnectionTransactional

      public static boolean isConnectionTransactional(RedisConnection connection, RedisConnectionFactory connectionFactory)
      指定された Redis 接続がトランザクションであるかどうか、つまり Spring のトランザクション機能によって現在のスレッドにバインドされているかどうかを返します。
      パラメーター:
      connection - 確認する Redis 接続
      connectionFactory - 接続が作成された Redis 接続ファクトリ
      戻り値:
      接続がトランザクションであるかどうか