Interface HashCommands<K,F,V>

Type Parameters:
K - the type of the key
F - the type of the field
V - the type of the value
All Superinterfaces:
RedisCommands
All Known Implementing Classes:
BlockingHashCommandsImpl

public interface HashCommands<K,F,V> extends RedisCommands
Allows executing commands from the hash group. See the hash command list for further information about these commands. A hash is a like a Map&lt;F, V&gt;. This group is parameterized by the type of the key Map&lt;K&gt;. This is the type of the key in which the hash is stored. &lt;F&gt; is the type of the key in the map (field). The stored value are of type Map&lt;V&gt;
  • Method Details

    • hdel

      int hdel(K key, F... fields)
      Execute the command HDEL. Summary: Delete one or more hash fields Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      Returns:
      the number of fields that were removed from the hash, not including specified but non-existing fields.
    • hexists

      boolean hexists(K key, F field)
      Execute the command HEXISTS. Summary: Determine if a hash field exists Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      field - the value
      Returns:
      true the hash contains field. false the hash does not contain field, or the key does not exist.
    • hget

      V hget(K key, F field)
      Execute the command HGET. Summary: Get the value of a hash field Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      field - the value
      Returns:
      the value associated with field, or null when field is not present in the hash or the key does not exist.
    • hincrby

      long hincrby(K key, F field, long amount)
      Execute the command HINCRBY. Summary: Increment the integer value of a hash field by the given number Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      field - the value
      Returns:
      the value at field after the increment operation.
    • hincrbyfloat

      double hincrbyfloat(K key, F field, double amount)
      Execute the command HINCRBYFLOAT. Summary: Increment the float value of a hash field by the given amount Group: hash Requires Redis 2.6.0
      Parameters:
      key - the key
      field - the value
      Returns:
      the value of field after the increment.
    • hgetall

      Map<F,V> hgetall(K key)
      Execute the command HGETALL. Summary: Get all the fields and values in a hash Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      Returns:
      the map fields -> values stored in the hash, or an empty map when key does not exist.
    • hkeys

      List<F> hkeys(K key)
      Execute the command HKEYS. Summary: Get all the fields in a hash Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      Returns:
      list of fields in the hash, or an empty list when key does not exist.
    • hlen

      long hlen(K key)
      Execute the command HLEN. Summary: Get the number of fields in a hash Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      Returns:
      number of fields in the hash, or 0 when key does not exist.
    • hmget

      Map<F,V> hmget(K key, F... fields)
      Execute the command HMGET. Summary: Get the values of all the given hash fields Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      fields - the fields
      Returns:
      list of values associated with the given fields, in the same order as they are requested. If a requested field does not exist, the returned map contains a null value for that field.
    • hmset

      @Deprecated void hmset(K key, Map<F,V> map)
      Deprecated.
      Use hset(Object, Map) with multiple field-value pairs.
      Execute the command HMSET. Summary: Set multiple hash fields to multiple values Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      map - the key/value map to set
    • hrandfield

      F hrandfield(K key)
      Execute the command HRANDFIELD. Summary: Get one or multiple random fields from a hash Group: hash Requires Redis 6.2.0
      Parameters:
      key - the key
      Returns:
      a random key from the hash, null if the key does not exist
    • hrandfield

      List<F> hrandfield(K key, long count)
      Execute the command HRANDFIELD. Summary: Get one or multiple random fields from a hash Group: hash Requires Redis 6.2.0
      Parameters:
      key - the key
      count - the number of random key to retrieve. If count is positive, the selected keys are distinct. If count is negative, the produced list can contain duplicated keys.
      Returns:
      the list of keys, empty if the key does not exist
    • hrandfieldWithValues

      Map<F,V> hrandfieldWithValues(K key, long count)
      Execute the command HRANDFIELD. Summary: Get one or multiple random fields and their associated values from a hash Group: hash Requires Redis 6.2.0
      Parameters:
      key - the key
      count - the number of random key to retrieve. If count is positive, the selected keys are distinct. If count is negative, the produced list can contain duplicated keys. These duplicates are not included in the produced Map.
      Returns:
      the map containing the random keys and the associated values, empty if the key does not exist
    • hscan

      HashScanCursor<F,V> hscan(K key)
      Execute the command HSCAN. Summary: Incrementally iterate hash fields and associated values Group: hash Requires Redis 2.8.0
      Parameters:
      key - the key
      Returns:
      the cursor.
    • hscan

      HashScanCursor<F,V> hscan(K key, ScanArgs scanArgs)
      Execute the command HSCAN. Summary: Incrementally iterate hash fields and associated values Group: hash Requires Redis 2.8.0
      Parameters:
      key - the key
      scanArgs - the additional argument
      Returns:
      the cursor
    • hset

      boolean hset(K key, F field, V value)
      Execute the command HSET. Summary: Set the string value of a hash field Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      field - the field
      value - the value
      Returns:
      true if the value was set
    • hset

      long hset(K key, Map<F,V> map)
      Execute the command HSET. Summary: Set the string value of a hash field Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      map - the set of key -> value to add to the hash
      Returns:
      the number of fields that were added.
    • hsetnx

      boolean hsetnx(K key, F field, V value)
      Execute the command HSETNX. Summary: Set the value of a hash field, only if the field does not exist Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      field - the value
      value - the value
      Returns:
      true field is a new field in the hash and value was set. false field already exists in the hash and no operation was performed.
    • hstrlen

      long hstrlen(K key, F field)
      Execute the command HSTRLEN. Summary: Get the length of the value of a hash field Group: hash Requires Redis 3.2.0
      Parameters:
      key - the key
      field - the value
      Returns:
      the string length of the value associated with field, or zero when field is not present in the hash or key does not exist at all.
    • hvals

      List<V> hvals(K key)
      Execute the command HVALS. Summary: Get all the values in a hash Group: hash Requires Redis 2.0.0
      Parameters:
      key - the key
      Returns:
      list of values in the hash, or an empty list when key does not exist.