パッケージcom.jjf.redis。
輸入org.junit.Assert;
輸入org.junit.Test;
輸入redis.clients.jedis.Jedis。
輸入redis.clients.jedis.Pipeline。
輸入redis.clients.jedis.ScanResult。
輸入はjava.util.List;
輸入java.util.Set;
/ **
* 2017年3月31日にjjf_lenovoによって作成されます。
* /
publicクラスRedisSetTest {
Jedis jedis = NULL;
静的最終列DATASOURCE_URL =「182.254.213.106」。
静的最終int型のDATASOURCE_SORT = 6379;
静的最終列DATASOURCE_PASS =「123456」。
静的最終INT DATASOURCE_SELECT = 1。
公共RedisSetTest(){
//基本配置
=新しい新しいJedis jedis(DATASOURCE_URL、DATASOURCE_SORTに);
jedis.auth(DATASOURCE_PASS);
jedis.select(DATASOURCE_SELECT);
}
@Test
公共ボイドtestSAdd(){
//サッド一種以上の元素有するキー部材のセットにメンバー要素のコレクション内に存在は無視されます。
Assert.assertTrue(jedis.sadd( "SET"、 "A")== 1);
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 2)。
Assert.assertTrue(jedis.del( "セット")== 1);
}
@Test
公共ボイドtestSCard(){
//戻りSCARDセットベースキー(セット内の要素の数)。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
アサート。
Assert.assertTrue(jedis.del( "SET")== 1);
}
@Test
公共ボイドtestSDiff(){
// sdiffのは、セットのすべてのメンバーを返し、セットは、すべての所与のセットのセットとの間の差です。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 " C "" "" B "" C ")== 6);
セット<ストリング> = jedis.sdiff(" SET "" SET「); //このセットは、SETのない識別することですエレメント、マルチレベルは、その後、より一つずつ
セットの<string> B = jedis.sdiff( 「SET」、「セット」); //は全くその要素、マルチレベル、より一つずつ設定されていないSET、識別することである
システム。 out.printlnを(a.toString()+ ":::" + b.toString());
Assert.assertTrue(jedis.del( "SET"、 "SET")== 2)。
Assert.assertTrue(jedis.sadd( "セット"、 ""、 "B"、 "C")== 3)。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C"、 ""、 "B"、 "C")== 6)。
Assert.assertTrue(jedis.sdiffstore( "ストア"、 "SET"、 "セット")== 3)。
Assert.assertTrue(jedis.sdiffstore( "ストア"、 "セット"、 "SET")== 0)。
Assert.assertTrue(jedis.del( "SET"、 "SET")== 2)。
}
@Test
公共ボイドtestSInter(){
//焼結返回一个集合的全部成员、该集合是所有给定集合的交集。
Assert.assertTrue(jedis.sadd( "セット"、 ""、 "B"、」 C ")== 3)。
Assert.assertTrue(jedis.sadd(」
Assert.assertTrue(jedis.del( "SET"、 "SET")== 2);
}
@Test
公共ボイドtestSInterStore(){
//このコマンドはsinterstore焼結コマンドに類似しているが、それが設定された目的地までの結果が保存され、そして単に結果セットを返しません。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 " C "" A "" B "" C ")== 6)。
Assert.assertTrue(jedis.sinterstore("ストア"" SET "" SET「)== 3);
Assert.assertTrue(jedisれる.del( "セット"、 "SET "、 "ストア")== 3)。
}
@Test
公共ボイドtestSIsMember(){
// sismember部材セットキー要素部材か否かを判定する。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
Assert.assertTrue(jedis.sismember( "SET"、 "B"));
Assert.assertTrue(jedis.del( "SET")== 1);
}
@Test
ます。public void testSMembers(){
//コレクションの主要メンバーのすべてsmembersを返します。キーが空のセットとして見られるために存在していません。
Assert.assertTrue(==( "SET"、 "A"、 "B"、 "C")jedis.sadd 3);
セット<ストリング> = jedis.smembersのSET( "SET");
System.out.printlnは( set.toString());
Assert.assertTrue(set.size()== 3);
Assert.assertTrue(jedis.del( "SET")== 1);
}
@Test
公共ボイドtestSMove(){
//宛先セットコレクションにソース要素から部材が移動。(原子)
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
アサート。
Assert.assertTrue(jedis.smove( "SET"、 "SET"、 "A")== 1);
セット<ストリング> A = jedis.smembers( "SET");
セット<ストリング> B = jedis.smembers( "SET");
のSystem.out.println(a.toString());
のSystem.out.println(b.toString());
Assert.assertTrue(a.size()== 2);
Assert.assertTrue(B .size()== 6);それはまだ6であるので、//は既に、として存在し
; Assert.assertTrue(jedis.del( "SET"、 "SET")== 2)
}
@Test
公共ボイドtestSPop)( {
// SPOPの除去・リターンコレクション内のランダムな要素。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
のSystem.out.println(jedis.spop( "SET"))。
セット<文字列> A = jedis.smembers( "セット");
Assert.assertTrue(a.size()== 2)。
Assert.assertTrue(jedis.del( "SET")== 1);
}
@Test
公共ボイドtestSRandMember(){
/ **
*コマンドが実行される場合、それは、コレクション内のランダムな要素のみ重要なパラメータ返します。
Redisの2.6バージョンを開始、SRANDMEMBER countコマンドは、オプションのパラメータを受け取り:
カウントが正、ベースセットよりも小さい場合、このコマンドは、アレイの要素が異なる、カウント配列が要素を含む返します。カウントがセットベースに等しいより大きい場合は、コレクション全体を返します。
countが負である場合、このコマンドは、アレイ内の素子のアレイを複数回繰り返してもよい戻り、配列の長さは、カウントの絶対値です。
* /
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C")== 3);
のSystem.out.println(jedis.srandmember( "SET")); //異なりますSPOPで、除去することなくsrandmember
セットの<string> A = jedis.smembers( "SET");
Assert.assertTrue(a.size()== 3);
リストの<string>リスタ= jedis.srandmember( "セット"、2); //は、 2個の乱数が重複しない返し
するSystem.out.println( "リスタ:" + lista.toString());
リストの<string> ListBの= jedis.srandmember( "セット"、5 ); // 5> 3 戻るすべてのデータ
のSystem.out.println( "ListBの" + listb.toString());
リストの<string> listc = jedis.srandmember(「SET "-2); //戻り| -2 |リピートデータ
のSystem.out.println(" listc: "+ listc.toString());
リストの<string> listd = jedis.srandmember(" SET」 -6); //戻り| -6 |リピートデータ
のSystem.out.println( "listd:" + listd.toString());
Assert.assertTrue(jedis.del( "SET")== 1)。 ;
}
@Test
公共ボイドtestSRem(){
//セットシレムキー部材または複数の要素を削除、メンバーが存在しない要素は無視されます。
Assert.assertTrue(jedis.sadd( "セット"、 ""、 "B"、 "C")== 3)。
Assert.assertTrue(jedis.srem( "セット"、 ""、 "D")== 1)。
Assert.assertTrue(jedis.del( "セット")== 1)。
}
@Test
公共ボイドtestSunion(){
// sunion返回一个集合的全部成员、该集合是所有给定集合的并集。
Assert.assertTrue(jedis.sadd( "セット"、 ""、 "B"、 "C")== 3)。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C"、 ""、 "B"、 "C")== 6)。
セットの<string>セット= jedis.sunion( "セット"、 "SET")。
System.out.println(set.toString())。
Assert.assertTrue(セット。サイズ()== 6)。
Assert.assertTrue(jedis.del( "SET"、 "SET")== 2)。
}
@Test
公共ボイドtestSunionStore(){
// sunion返回一个集合的全部成员、该集合是所有给定集合的并集。
Assert.assertTrue(jedis.sadd( "セット"、 ""、 "B"、 "C")== 3)。
Assert.assertTrue(jedis.sadd( "SET"、 "A"、 "B"、 "C"、 ""、 "B"、 "C")== 6)。
Assert.assertTrue(jedis.sunionstore( "ストア"、 "セット"、 "SET")== 6)。
Assert.assertTrue(jedis.del( "SET"、 "SET"、 "店舗")== 3)。
}
@Test
公共ボイドtestSScan(){
パイプラインパイプライン= jedis.pipelined()。
以下のために(INT iが= 0; I <1000; I ++){
pipeline.sadd( "セット"、String.valueOf(I))。
}
pipeline.sync()。
ScanResult <ストリング>結果; // = jedis.sscan( "セット"、0);
//するSystem.out.println(result.getResult()サイズ()+ "::" + result.getStringCursor());
//するSystem.out.println(。result.getResult()のtoString());
int型のカウント= 0;
int型カーソル= 0;
やる{
//するSystem.out.println(result.getCursor());
結果= jedis.sscan( "セット"、カーソル)。
カーソル= Integer.valueOf(result.getStringCursor())。
以下のための(文字列SS:result.getResult()){
++数えます。
System.out.print( "<" +数+ ":" + SS + ">");
}
のSystem.out.println();
}
ながら(!カーソル= 0)。
System.out.println(カウント)。
Assert.assertTrue(カウント== 1000);
Assert.assertTrue(jedis.del( "セット"、」
}
}
javaコマンドRedisのセットの動作例(Jedis)
おすすめ
転載: www.cnblogs.com/zhuyeshen/p/12147977.html
おすすめ
ランキング