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 Detail

      • 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.