クラス DefaultScriptExecutor<K>

java.lang.ObjectSE
org.springframework.data.redis.core.script.DefaultScriptExecutor<K>
型パラメーター:
K - スクリプトの実行中に渡される可能性のあるキーの型
実装されたすべてのインターフェース:
ScriptExecutor<K>

public class DefaultScriptExecutor<K> extends ObjectSE implements ScriptExecutor<K>
ScriptExecutor のデフォルトの実装。最初に evalsha を使用してスクリプトを実行し、Redis がまだスクリプトをキャッシュしていない場合は eval にフォールバックすることにより、パフォーマンスを最適化します。スクリプトがパイプラインまたはトランザクションで実行される場合、Evalsha は試行されません。
作成者:
Jennifer Hickey, Christoph Strobl, Thomas Darimont, Mark Paluch
  • コンストラクターの詳細

    • DefaultScriptExecutor

      public DefaultScriptExecutor(RedisTemplate<K,?> template)
      パラメーター:
      template - 使用する RedisTemplate
  • メソッドの詳細

    • execute

      public <T> T execute(RedisScript<T> script, ListSE<K> keys, ObjectSE... args)
      インターフェースからコピーされた説明: ScriptExecutor
      指定された RedisScript を実行します
      次で指定:
      インターフェース ScriptExecutor<K>execute 
      パラメーター:
      script - 実行するスクリプト
      keys - スクリプトに渡す必要のあるキー
      args - スクリプトに渡す必要のある引数
      戻り値:
      スクリプトの戻り値。RedisScript.getResultType() が null の場合は null。おそらく使い捨てのステータス応答を示します (つまり、"OK" )
    • execute

      public <T> T execute(RedisScript<T> script, RedisSerializer<?> argsSerializer, RedisSerializer<T> resultSerializer, ListSE<K> keys, ObjectSE... args)
      インターフェースからコピーされた説明: ScriptExecutor
      指定された RedisSerializer を使用して、指定された RedisScript を実行し、スクリプトの引数と結果を直列化します。
      次で指定:
      インターフェース ScriptExecutor<K>execute 
      パラメーター:
      script - 実行するスクリプト
      argsSerializer - 引数の直列化に使用する RedisSerializer
      resultSerializer - スクリプトの戻り値の直列化に使用する RedisSerializer
      keys - スクリプトに渡す必要のあるキー
      args - スクリプトに渡す必要のある引数
      戻り値:
      スクリプトの戻り値。RedisScript.getResultType() が null の場合は null。おそらく使い捨てのステータス応答を示します (つまり、"OK" )
    • eval

      protected <T> T eval(RedisConnection connection, RedisScript<T> script, ReturnType returnType, int numKeys, byte[][] keysAndArgs, RedisSerializer<T> resultSerializer)
    • keysAndArgs

      protected byte[][] keysAndArgs(RedisSerializer argsSerializer, ListSE<K> keys, ObjectSE[] args)
    • scriptBytes

      protected byte[] scriptBytes(RedisScript<?> script)
    • deserializeResult

      protected <T> T deserializeResult(RedisSerializer<T> resultSerializer, ObjectSE result)
    • keySerializer

      protected RedisSerializer keySerializer()