redisの5つのタイプの使い方

12097 ワード

Redis    :   (String)、  /  /  (Hash)、  (List)、  (Set)、    (sorted set)  
Controller:@Resource RedisTemplate redisTemplate;

:
redisTemplate.opsForValue();//

redisTemplate.opsForHash();// hash
redisTemplate.opsForList();// list
redisTemplate.opsForSet();// set
redisTemplate.opsForZSet();// set

String:
1.redisTemplate.opsForValue().set(key,value)); 
2.redisTemplate.opsForValue().get(key));
3.redisTemplate.opsForValue().get(key, start, end);

4.redisTemplate.opsForValue().getAndSet(key, value);
5.redisTemplate.opsForValue().getBit(key, offset);//
6.redisTemplate.opsForValue().multiGet(keys);
7.redisTemplate.opsForValue().setBit(key, offset, value);//
8.redisTemplate.opsForValue().set(K key, V value, long timeout, TimeUnit unit);//TimeUnit timeout , \ \
9.redisTemplate.opsForValue().setIfAbsent(key, value);
10.redisTemplate.opsForValue().set(K key, V value, long offset);// java

11.redisTemplate.opsForValue().size(key));
12.redisTemplate.opsForValue().multiGet(Collection keys);
13.redisTemplate.opsForValue().multiSetIfAbsent(Map extends K, ? extends V> m);
14. 8
15\16\17\18\19.redisTemplate.opsForValue().increment(K key, long delta); .increment(K key, double delta);

20.redisTemplate.opsForValue().append(key, value);// key value
, :21.del key------21.redisTemplate.opsForValue().getOperations().delete(key);


番号付け
コマンド#コマンド#
説明説明
1
SET key value
このコマンドは、指定したキーの値を設定します.
2
GET key
指定したキーの値を取得します.
3
GETRANGE key start end
キーに格納された文字列のサブ文字列を取得します.
4
GETSET key value
キーの文字列値を設定し、古い値を返します.
5
GETBIT key offset
キーに格納された文字列値のオフセットのビット値を返します.
6
MGET key1 [key2..]
与えられたすべてのキーの値を取得
7
SETBIT key offset value
キーに格納された文字列値のオフセットの設定またはクリアビット
8
SETEX key seconds value
キーと有効期限を使用して値を設定
9
SETNX key value
キーの値を設定します.キーが存在しない場合のみ
10
SETRANGE key offset value
指定したオフセットで始まるキーで文字列の一部を上書き
11
STRLEN key
キーに格納された値の長さを取得
12
MSET key value [key value …]
複数のキーにそれぞれ値を設定
13
MSETNX key value [key value …]
キーが存在しない場合にのみ、複数のキーにそれぞれ値を設定します.
14
PSETEX key milliseconds value
キーの値と有効期限をミリ秒単位で設定
15
INCR key
キーの整数値を1増加
16
INCRBY key increment
キーの整数値を所定の値で増加
17
INCRBYFLOAT key increment
キーの浮動小数点値を所定の値で増加
18
DECR key
キーの整数値を1に減らします.
19
DECRBY key decrement
指定した値を押してキーの整数値を減らします
20
APPEND key value
キーに指定した値をアタッチ
.setBit(key, offset, value):key     value   ascii , offset   (     )  value.(    @           ),       0 1,  value   0 1,  ,         
.getBit(key, offset): ascii offset .
@ascii


 
 
Hash:
1.redisTemplate.opsForHash().delete(H key, Object... hashKeys);//...        map key, ,  。      
2.redisTemplate.opsForHash().hasKey(key, hashKey);
3.redisTemplate.opsForHash().get(key, hashKey);
4.redisTemplate.opsForHash().entries(key);// map
5、6.redisTemplate.opsForHash().increment(H key, HK hashKey, long delta);// increment(H key, HK hashKey, double delta);;
7.redisTemplate.opsForHash().keys(key);// map key Set
8.redisTemplate.opsForHash().size(key);
9.redisTemplate.opsForHash().multiGet(H key, Collection hashKeys);
10.redisTemplate.opsForHash().putAll(H key, Map extends HK, ? extends HV> m);
11.redisTemplate.opsForHash().put(key, hashKey, value);
12.redisTemplate.opsForHash().putIfAbsent(key, hashKey, value);
13.redisTemplate.opsForHash().values(key);// map value List

シーケンス番号
コマンド#コマンド#
説明
1
HDEL key field2 [field2]
1つ以上のハッシュフィールドを削除します.
2
HEXISTS key field
ハッシュフィールドが存在するかどうかを判断します.
3
HGET key field
指定したキーに格納されたハッシュフィールドの値を取得します.
4
HGETALL key
指定したキーのハッシュに格納されているすべてのフィールドと値を取得します.
5
HINCRBY key field increment
ハッシュフィールドの整数値を所定の数値で増加
6
HINCRBYFLOAT key field increment
ハッシュフィールドの浮動小数点値を所定の値で増加
7
HKEYS key
ハッシュ内のすべてのフィールドの取得
8
HLEN key
ハッシュ内のフィールド数の取得
9
HMGET key field1 [field2]
指定されたすべてのハッシュフィールドの値を取得
10
HMSET key field1 value1 [field2 value2 ]
複数のハッシュフィールドにそれぞれ値を設定
11
HSET key field value
ハッシュ・フィールドの文字列値の設定
12
HSETNX key field value
ハッシュ・フィールドの値は、フィールドが存在しない場合にのみ設定されます.
13
HVALS key
ハッシュ内のすべての値の取得
List:

redisTemplate.opsForList().leftPush(key, value);//
redisTemplate.opsForList().leftPop(key);//
redisTemplate.opsForList().size(key);// /
redisTemplate.opsForList().range(key, start, end);// , List
redisTemplate.opsForList().remove(key, i, value);// key value i , ; 0
redisTemplate.opsForList().index(key, index);//
redisTemplate.opsForList().set(key, index, value);//
redisTemplate.opsForList().trim(key, start, end);// ,void, [start,end]  
redisTemplate.opsForList().rightPopAndLeftPush(String sourceKey, String destinationKey);// key , key ,
: Serializable , Spring Redis, nested exception is java.lang.IllegalArgumentException: DefaultSerializer requires a Serializable……//;;/


シーケンス番号
コマンド#コマンド#
説明
1
BLPOP key1 [key2 ] timeout
リスト内の最初の要素を削除して取得するか、1つの要素が使用可能になるまでブロックします.
2
BRPOP key1 [key2 ] timeout
リスト内の最後の要素を削除して取得するか、要素が使用可能になるまでブロックします.
3
BRPOPLPUSH source destination timeout
リストから値をポップアップし、別のリストにプッシュして返します.使用可能になるまでブロックします
4
LINDEX key index
インデックスを使用してリストから要素を取得
5
LINSERT key BEFORE/AFTER pivot value
リスト内の別の要素の前または後に要素を挿入
6
LLEN key
取得リストの長さ
7
LPOP key
リストの最初の要素を削除して取得
8
LPUSH key value1 [value2]
1つ以上の値をリストに追加
9
LPUSHX key value
リストが存在する場合のみ、リストに値を追加します.
10
LRANGE key start stop
リストから一連の要素を取得
11
LREM key count value
リストから要素を削除
12
LSET key index value
インデックスによるリスト内の要素の値の設定
13
LTRIM key start stop
トリムリストの指定範囲
14
RPOP key
リストの最後の要素を削除して取得
15
RPOPLPUSH source destination
リストの最後の要素を削除し、別のリストに添付して返します.
16
RPUSH key value1 [value2]
1つ以上の値をリストに添付
17
RPUSHX key value
リストが存在する場合のみ、値をリストに添付します.

Set:

redisTemplate.opsForValue().getAndSet(key, value)


シーケンス番号
コマンド#コマンド#
説明
1
SADD key member1 [member2]
1つ以上のメンバーをコレクションに追加
2
SCARD key
コレクション内のメンバー数の取得
3
SDIFF key1 [key2]
複数のコレクションを減算
4
SDIFFSTORE destination key1 [key2]
複数のセットを減算し、結果セットをキーに格納
5
SINTER key1 [key2]
複数のコレクションを交差
6
SINTERSTORE destination key1 [key2]
複数のセットをクロス集計して結果セットをキーに格納
7
SISMEMBER key member
与えられた値が集合のメンバーであるかどうかを判断する
8
SMOVE source destination member
メンバーを1つのコレクションから別のコレクションに移動
9
SPOP key
コレクションからランダムメンバーを削除して返す
10
SRANDMEMBER key [count]
1つ以上のランダムメンバーをコレクションから取得
11
SREM key member1 [member2]
1つ以上のメンバーをコレクションから削除
12
SUNION key1 [key2]
複数のコレクションを追加
13
SUNIONSTORE destination key1 [key2]
複数のセットを追加し、結果セットをキーに保存
14
SSCAN key cursor [MATCH pattern] [COUNT count]
コレクション内の要素をインクリメンタルに反復
 
   ,   ,            ,         ?  java                ”  “ java  ,     ,            。  List Set        !

転載先:https://www.cnblogs.com/yanan7890/p/6617305.html