はじめに:
、データ構造の5つの一般的に使用されるタイプを仕上げ、文字列、リスト、セット、ハッシュ、ZSET、それらの対応するプロフィール以下、コマンドとアプリケーションケースに基づいてRedisの、次のキー、値がのために重要なパラメータであることをいいます値を参照するときに複数の値を渡すことができ
Mavenの導入
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0-yp</version>
</dependency>
テストケースを書きます:
Jedis jedis = new Jedis("192.168.1.214",6379);
String ping = jedis.ping();
System.out.println(ping);
この結果は=> PONGが
正常に接続することができます説明します
1.redis文字列
コマンド:
コマンド | 機能 | に対応したJavaコード | 戻り値の型 | 返却値 |
---|---|---|---|---|
セットする | Insertキーと値 | jedis.set(キー、値) | ストリング | "OK" |
取得する | キーの値を取得するためによると | jedis.get(キー) | ストリング | 値 |
の | 削除キーをよります | jedis.del(キー) | 長いです |
ケース:
redis 127.0.0.1:6379> set hello world
OK
redis 127.0.0.1:6379> get hello
"world"
redis 127.0.0.1:6379> del hello
(integer) 1
redis 127.0.0.1:6379> get hello
(nil)
redis 127.0.0.1:6379>
リスト2.redis
コマンド:
コマンド | 機能 | に対応したJavaコード | 戻り値の型 | 返却値 |
---|---|---|---|---|
LPUSH | カスタマイズは、リストの左端をプッシュします | jedis.lpush(キー、値) | 長いです | |
RPUSH | カスタマイズは、リストの右端にプッシュします | jedis.rpush(キー、値) | 長いです | |
LPOP | リストの左から値をポップし、ポップアップの値を返します。 | jedis.lpop(キー) | ストリング | 値 |
RPOP | リストの右から値をポップし、ポップアップの値を返します。 | jedis.rpop(キー) | ストリング | 値 |
LRANGE | 与えられた範囲内のすべての値のリストを取得します。 | jedis.lrange(キー、開始、終了)。 | 一覧<文字列> | 値 |
LINDEX | 上の所定の位置に個々の要素のリストを取得します。 | jedis.lindex(キー、インデックス) | ストリング | 値 |
ケース:
127.0.0.1:6379> rpush list-key item
(integer) 1
127.0.0.1:6379> rpush list-key item2
(integer) 2
127.0.0.1:6379> rpush list-key item
(integer) 3
127.0.0.1:6379> lrange list-key 0 -1
1) "item"
2) "item2"
3) "item"
127.0.0.1:6379> lindex list-key 1
"item2"
127.0.0.1:6379> lpop list-key
"item"
127.0.0.1:6379> lrange list-key 0 -1
1) "item2"
2) "item"
127.0.0.1:6379>
注:
0は開始インデックスである
インデックス位置を終了-1
3.Redisコレクション
要約:
セットの一方の端部から押したり、ポップすることはできません
コレクションに要素を追加SADDと缶を
SREM削除要素
SISMEMBERチェック要素が存在する
SMEMBERSは多くは非常に遅くなり、すべての要素が含まれているコレクションを取得します。
コマンド:
コマンド | 機能 | に対応したJavaコード | 戻り値の型 | 返却値 |
---|---|---|---|---|
SADD | 要素がコレクションに追加します | jedis.sadd(キー、値) | 長いです | |
SREM | 要素を削除します | jedis.srem(キー、値) | 長いです | |
SISMEMBER | 部材は要素の集合のメンバであるかどうかを決定するためのコマンド | jedis.sismember(キー、値) | ブーリアン | |
SMEMBERS | すべての要素がたくさん含まれているコレクションは非常に遅くなります取得します。 | jedis.smembers(キー) | セット<文字列> | 値 |
ケース:
127.0.0.1:6379> sadd set-key item
(integer) 1
127.0.0.1:6379> sadd set-key item2
(integer) 1
127.0.0.1:6379> sadd set-key item3
(integer) 1
127.0.0.1:6379> sadd set-key item
(integer) 0
127.0.0.1:6379> smembers set-key
1) "item2"
2) "item3"
3) "item"
127.0.0.1:6379> sismember set-key item
(integer) 1
127.0.0.1:6379> sismember set-key item4
(integer) 0
127.0.0.1:6379> srem set-key item2
(integer) 1
127.0.0.1:6379> srem set-key item2
(integer) 0
127.0.0.1:6379> smembers set-key
1) "item3"
2) "item"
127.0.0.1:6379>
4.Redisハッシュハッシュ
導入:
文字列、文字列または数値の値を格納することができるようにハッシュは、キーと値のペアの複数の間のマッピングを格納してもよい
し、ユーザがそのデジタル値インクリメントデクリメント操作を実行することができます
コマンド:
コマンド | 機能 | に対応したJavaコード | 戻り値の型 | 返却値 |
---|---|---|---|---|
HSET | 内部の指定されたキーと値のペアに関連付けられたハッシュ以来 | jedis.hset(キー、フィールド、値) | 長いです | |
hget | トップハッシュ値を18行取得します | jedis.hget(キー、フィールド) | ストリング | |
HGETALL | すべての値を取得します。 | jedis.hgetAll(キー) | 地図<文字列、文字列> | {フィールド:値} |
HDEL | 指定された値を削除します | jedis.hdel(キー、フィールド) | 長いです |
ケース:
127.0.0.1:6379> hset hash-key sub-key1 value1
(integer) 1
127.0.0.1:6379> hset hash-key sub-key1 value2
(integer) 0
127.0.0.1:6379> hset hash-key sub-key1 value1
(integer) 0
127.0.0.1:6379> hset hash-key sub-key2 value1
(integer) 1
127.0.0.1:6379> hgetall hash-key
1) "sub-key1"
2) "value1"
3) "sub-key2"
4) "value1"
127.0.0.1:6379> hdel hash-key sub-key2
(integer) 1
127.0.0.1:6379> hdel hash-key sub-key2
(integer) 0
127.0.0.1:6379> hget hash-key sub-key1
"value1"
127.0.0.1:6379> hgetall hash-key
1) "sub-key1"
2) "value1"
127.0.0.1:6379>
5.Redisの順序集合
説明:
順序集合とハッシュなどの店舗のキーと値のペアに使用され、順序付きセットは、着信スコア(スコア)に従ってソートすることができます
コマンド:
コマンド | 機能 | に対応したJavaコード | 戻り値の型 | 返却値 |
---|---|---|---|---|
ZADD | 注文したコレクションに追加スコアとセットのメンバー | jedis.zadd(キー、スコア、メンバー) | 長いです | |
ZRANGE | インデックス順序、及び表示インデックス範囲内の値 | jedis.zrange(キー、開始、終了) | セット<文字列> | |
ZRANGEBYSCORE | 画分は、スコアの範囲内の値をソートして表示しました | jedis.zrangeByScore(キー、MIN、MAX) | セット<文字列> | |
ZREM | メンバーが存在する場合は、メンバーを削除することができます | jedis.zre(キー、値) | 長いです | |
ZINTERSTORE | 交差演算子は、スコアを追加し、2つの順序集合に基づいて新しい順序集合を生成し、 | jedis.zinterstore(NEWKEY、KEY1、キー) | 長いです | |
ZINTERSTORE | 二人はスコアを追加し、新しい順序集合を生成セット和集合演算を命じました | jedis.zunionstore(NEWKEY、KEY1、キー) | 長いです |
ケース:
127.0.0.1:6379> zadd zset-key 728 member1
(integer) 1
127.0.0.1:6379> zadd zset-key 982 member0
(integer) 1
127.0.0.1:6379> zadd zset-key 982 member0
(integer) 0
127.0.0.1:6379> zrange zset-key 0 -1 withscores
1) "member1"
2) "728"
3) "member0"
4) "982"
127.0.0.1:6379> zrangebyscore zset-key 0 800 withscores
1) "member1"
2) "728"
127.0.0.1:6379> zrem zset-key member1
(integer) 1
127.0.0.1:6379> zrem zset-key member1
(integer) 0
127.0.0.1:6379> zrange zset-key 0 -1 withscores
1) "member0"
2) "982"
127.0.0.1:6379> zrange zset-key 0 -1
1) "member0"
127.0.0.1:6379>
注
別のメソッドjedis.zrangeWithScores / zrangeByScoreWithScoresとJavaのwithscoresに、戻り値を設定し、<タプル>