クラス JedisConnection

java.lang.ObjectSE
org.springframework.data.redis.connection.AbstractRedisConnection
org.springframework.data.redis.connection.jedis.JedisConnection
実装されたすべてのインターフェース:
AutoCloseableSEDefaultedRedisConnectionRedisCommandsRedisCommandsProviderRedisConnectionRedisConnectionCommandsRedisGeoCommandsRedisHashCommandsRedisHyperLogLogCommandsRedisKeyCommandsRedisListCommandsRedisPubSubCommandsRedisScriptingCommandsRedisServerCommandsRedisSetCommandsRedisStreamCommandsRedisStringCommandsRedisTxCommandsRedisZSetCommands

public class JedisConnection extends AbstractRedisConnection
上に RedisConnection 実装 Jedis のライブラリ。

このクラスはスレッドセーフではないため、インスタンスをスレッド間で共有しないでください。

作成者:
Costin Leau, Jennifer Hickey, Christoph Strobl, Thomas Darimont, Jungtaek Lim, Konstantin Shchepanovskyi, David Liu, Milan Agatonovic, Mark Paluch, Ninad Divadkar, Guy Korland, Dengliming, John Blum
関連事項:
  • Jedis
  • コンストラクターの詳細

    • JedisConnection

      public JedisConnection(redis.clients.jedis.Jedis jedis)
      新しい JedisConnection を構築します。
      パラメーター:
      jedis - Jedis クライアント。
    • JedisConnection

      public JedisConnection(redis.clients.jedis.Jedis jedis, redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis> pool, int dbIndex)
      Jedis Pool に支えられた新しい < JedisConnection を構築します。
      パラメーター:
      jedis - Jedis クライアント。
      pool - Redis 接続の Pool。プールが使用されていない場合は、null を指定できます。
      dbIndex - Redis データベースの indexSE を使用します。
    • JedisConnection

      protected JedisConnection(redis.clients.jedis.Jedis jedis, @Nullable redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis> pool, int dbIndex, @Nullable StringSE clientName)
      Jedis Pool に支えられた新しい < JedisConnection を構築します。
      パラメーター:
      jedis - Jedis クライアント。
      pool - Redis 接続の Pool。プールが使用されていない場合は、null を指定できます。
      dbIndex - Redis データベースの indexSE を使用します。
      clientName - nameSE がこのクライアントに与えられます。null にすることもできます。
      導入:
      1.8
    • JedisConnection

      protected JedisConnection(redis.clients.jedis.Jedis jedis, @Nullable redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis> pool, redis.clients.jedis.JedisClientConfig nodeConfig, redis.clients.jedis.JedisClientConfig sentinelConfig)
      Jedis Pool に支えられた新しい < JedisConnection を構築します。
      パラメーター:
      jedis - Jedis クライアント。
      pool - Redis 接続の Pool。プールが使用されていない場合は、null を指定できます。
      nodeConfig - Redis ノード構成
      sentinelConfig - Redis Sentinel の構成
      導入:
      2.5
  • メソッドの詳細

    • convertJedisAccessException

      protected DataAccessException convertJedisAccessException(ExceptionSE cause)
    • commands

      public RedisCommands commands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisCommands を取得します。
      戻り値:
      決して null にはなりません。
    • geoCommands

      public RedisGeoCommands geoCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisGeoCommands を取得します。
      戻り値:
      決して null にはなりません。
    • hashCommands

      public RedisHashCommands hashCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisHashCommands を取得します。
      戻り値:
      決して null にはなりません。
    • hyperLogLogCommands

      public RedisHyperLogLogCommands hyperLogLogCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisHyperLogLogCommands を取得します。
      戻り値:
      決して null にはなりません。
    • keyCommands

      public RedisKeyCommands keyCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisKeyCommands を取得します。
      戻り値:
      決して null にはなりません。
    • listCommands

      public RedisListCommands listCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisListCommands を取得します。
      戻り値:
      決して null にはなりません。
    • setCommands

      public RedisSetCommands setCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisSetCommands を取得します。
      戻り値:
      決して null にはなりません。
    • streamCommands

      public RedisStreamCommands streamCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisStreamCommands を取得します。
      戻り値:
      決して null にはなりません。
    • stringCommands

      public RedisStringCommands stringCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisStringCommands を取得します。
      戻り値:
      決して null にはなりません。
    • zSetCommands

      public RedisZSetCommands zSetCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisZSetCommands を取得します。
      戻り値:
      決して null にはなりません。
    • scriptingCommands

      public RedisScriptingCommands scriptingCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisScriptingCommands を取得します。
      戻り値:
      決して null にはなりません。
    • serverCommands

      public RedisServerCommands serverCommands()
      インターフェースからコピーされた説明: RedisCommandsProvider
      RedisServerCommands を取得します。
      戻り値:
      決して null にはなりません。
    • execute

      public ObjectSE execute(StringSE command, byte[]... args)
      インターフェースからコピーされた説明: RedisCommands
      指定された Redis コマンドと指定された引数のネイティブまたは生の実行。

      コマンドは、できる限り解釈を少なくしてそのまま実行されます。引数や結果の処理は呼び出し側の責任になります。

      パラメーター:
      command - Redis commandSE を実行します。null であってはなりません。
      args - オプションのコマンド引数の配列。空の場合もあります。
      戻り値:
      実行結果。null の場合もあります。
    • close

      public void close() throws DataAccessException
      インターフェースからコピーされた説明: RedisConnection
      接続を閉じるか終了します。
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース RedisConnectionclose 
      オーバーライド:
      クラス AbstractRedisConnectionclose 
      例外:
      DataAccessException - RedisConnection を閉じることができなかった場合。
    • getNativeConnection

      public redis.clients.jedis.Jedis getNativeConnection()
      インターフェースからコピーされた説明: RedisConnection
      ネイティブ接続(基になるライブラリ / ドライバオブジェクト)を返します。
      戻り値:
      基になるネイティブオブジェクト
    • isClosed

      public boolean isClosed()
      インターフェースからコピーされた説明: RedisConnection
      基になる接続が閉じているかどうかを示します。
      戻り値:
      接続が閉じている場合は true、それ以外の場合は false。
    • isQueueing

      public boolean isQueueing()
      インターフェースからコピーされた説明: RedisConnection
      接続が「キュー」(または「マルチ」)モードであるかどうかを示します。キューイングする場合、EXEC または DISCARD コマンドが発行されるまで、すべてのコマンドが延期されます。キューイングでは結果が返されないため、接続はデータと対話するすべての操作で NULL を返します。
      戻り値:
      接続がキュー / マルチモードの場合は true、それ以外の場合は false
    • isPipelined

      public boolean isPipelined()
      インターフェースからコピーされた説明: RedisConnection
      接続が現在パイプライン化されているかどうかを示します。
      戻り値:
      接続がパイプライン化されている場合は true、それ以外の場合は false
      関連事項:
    • openPipeline

      public void openPipeline()
      インターフェースからコピーされた説明: RedisConnection
      この接続のパイプラインモードをアクティブにします。パイプライン化されると、すべてのコマンドは null を返します(レスポンスは RedisConnection.closePipeline() を介して最後に読み取られます。接続がすでにパイプライン化されているときにこのメソッドを呼び出しても効果はありません。パイプライン化は、レスポンスをすぐにリクエストせずにコマンドを発行するために使用されます。バッチ。MULTI にいくらか似ていますが、パイプラインはアトミック性を保証しません。多くのコマンドを発行するとき(バッチシナリオなど)にのみパフォーマンスを向上させようとします。

      注:

      多くの場合、パフォーマンスのメリットは最小限ですが、使用への影響は少ないため、この機能を使用する前にパフォーマンステストを行うことを検討してください。
      関連事項:
    • closePipeline

      public ListSE<ObjectSE> closePipeline()
      インターフェースからコピーされた説明: RedisConnection
      パイプラインでコマンドを実行し、その結果を返します。接続がパイプライン化されていない場合、空のコレクションが返されます。
      戻り値:
      実行されたコマンドの結果。
    • echo

      public byte[] echo(byte[] message)
      インターフェースからコピーされた説明: RedisConnectionCommands
      サーバーラウンドトリップを介して message を返します。
      パラメーター:
      message - エコーするメッセージ。
      戻り値:
      メッセージまたはパイプライン / トランザクションで使用される場合は null。
      関連事項:
    • ping

      public StringSE ping()
      インターフェースからコピーされた説明: RedisConnectionCommands
      接続のテスト。
      戻り値:
      サーバーレスポンスメッセージ - 通常は PONG。パイプライン / トランザクションで使用される場合は null。
      関連事項:
    • discard

      public void discard()
      インターフェースからコピーされた説明: RedisTxCommands
      RedisTxCommands.multi() の後に発行されたすべてのコマンドを破棄します。
      関連事項:
    • exec

      public ListSE<ObjectSE> exec()
      インターフェースからコピーされた説明: RedisTxCommands
      RedisTxCommands.multi() で開始されたトランザクションでキューに入れられたすべてのコマンドを実行します。
      RedisTxCommands.watch(byte[]...) と一緒に使用する場合、監視対象のキーのいずれかが変更されていると、操作は失敗します。
      戻り値:
      実行された各コマンドに対する応答のリスト。
      関連事項:
    • getPipeline

      @Nullable public redis.clients.jedis.Pipeline getPipeline()
    • getRequiredPipeline

      public redis.clients.jedis.Pipeline getRequiredPipeline()
    • getTransaction

      @Nullable public redis.clients.jedis.Transaction getTransaction()
    • getRequiredTransaction

      public redis.clients.jedis.Transaction getRequiredTransaction()
    • getJedis

      public redis.clients.jedis.Jedis getJedis()
    • multi

      public void multi()
      インターフェースからコピーされた説明: RedisTxCommands
      トランザクションブロックの開始をマークします。
      コマンドはキューに入れられ、RedisTxCommands.exec() を呼び出すことによって実行するか、RedisTxCommands.discard() を使用してロールバックすることができます。
      関連事項:
    • select

      public void select(int dbIndex)
      インターフェースからコピーされた説明: RedisConnectionCommands
      正の dbIndex が指定された DB を選択します。
      パラメーター:
      dbIndex - データベースインデックス。
      関連事項:
    • unwatch

      public void unwatch()
      インターフェースからコピーされた説明: RedisTxCommands
      以前のすべての RedisTxCommands.watch(byte[]...) キーをフラッシュします。
      関連事項:
    • watch

      public void watch(byte[]... keys)
      インターフェースからコピーされた説明: RedisTxCommands
      RedisTxCommands.multi() で開始されたトランザクション中の変更について、指定された keys を監視します。
      パラメーター:
      keys - null であってはなりません。
      関連事項:
    • publish

      public LongSE publish(byte[] channel, byte[] message)
      インターフェースからコピーされた説明: RedisPubSubCommands
      指定されたメッセージを指定されたチャネルに公開します。
      パラメーター:
      channel - 公開するチャネル。null であってはなりません。
      message - 公開するメッセージ。null であってはなりません。
      戻り値:
      メッセージを受信したクライアントの数、またはパイプライン / トランザクションで使用されたときに null。
      関連事項:
    • getSubscription

      public Subscription getSubscription()
      インターフェースからコピーされた説明: RedisPubSubCommands
      この接続の現在のサブスクリプションを返します。接続がサブスクライブされていない場合は null を返します。
      戻り値:
      現在のサブスクリプション。使用可能なサブスクリプションがない場合は null。
    • isSubscribed

      public boolean isSubscribed()
      インターフェースからコピーされた説明: RedisPubSubCommands
      現在の接続が(少なくとも 1 つのチャネルに)サブスクライブされているかどうかを示します。
      戻り値:
      接続がサブスクライブされている場合は true、それ以外の場合は false
    • pSubscribe

      public void pSubscribe(MessageListener listener, byte[]... patterns)
      インターフェースからコピーされた説明: RedisPubSubCommands
      指定されたパターンに一致するすべてのチャネルへの接続をサブスクライブします。サブスクライブすると、接続はリスニングモードになり、他のチャネルにサブスクライブするか、サブスクライブを解除することしかできません。接続がサブスクライブ解除されるまで、他のコマンドは受け入れられません。

      この操作はブロックされており、現在のスレッドはすぐに新しいメッセージの待機を開始することに注意してください。

      パラメーター:
      listener - メッセージリスナー。null であってはなりません。
      patterns - チャネル名パターン。null であってはなりません。
      関連事項:
    • subscribe

      public void subscribe(MessageListener listener, byte[]... channels)
      インターフェースからコピーされた説明: RedisPubSubCommands
      指定されたチャネルへの接続をサブスクライブします。サブスクライブすると、接続はリスニングモードになり、他のチャネルにサブスクライブするか、サブスクライブを解除することしかできません。接続がサブスクライブ解除されるまで、他のコマンドは受け入れられません。

      この操作はブロックされており、現在のスレッドはすぐに新しいメッセージの待機を開始することに注意してください。

      パラメーター:
      listener - メッセージリスナー。null であってはなりません。
      channels - チャネル名は null であってはなりません。
      関連事項:
    • setConvertPipelineAndTxResults

      public void setConvertPipelineAndTxResults(boolean convertPipelineAndTxResults)
      パイプライン化された結果を期待されるデータ型に変換する必要があるかどうかを指定します。false の場合、closePipeline() および exec() の結果は、Jedis ドライバーによって返される型になります。
      パラメーター:
      convertPipelineAndTxResults - パイプラインと tx の結果を変換するかどうか
    • isActive

      protected boolean isActive(RedisNode node)
      クラスからコピーされた説明: AbstractRedisConnection
      ping を送信して、ノードがアクティブかどうかを確認します。
      オーバーライド:
      クラス AbstractRedisConnectionisActive 
      戻り値:
    • getSentinelConnection

      protected JedisSentinelConnection getSentinelConnection(RedisNode sentinel)
      クラスからコピーされた説明: AbstractRedisConnection
      RedisSentinelCommands を特定のノードに接続します。
      オーバーライド:
      クラス AbstractRedisConnectiongetSentinelConnection 
      戻り値:
    • getJedis

      protected redis.clients.jedis.Jedis getJedis(RedisNode node)