/*
字符串类型
*/
Jedis jedis = new Jedis("hadoop01", 6379);
jedis.auth("123");
jedis.flushDB();//清空当前的所有数据
jedis.set("key", "value");//在原来key对应的值上面追加一个字符串
jedis.append("redis", "test");//如果我们追加的key不存在 ,那么会自动创建一个key
jedis.incrBy("count", 10); //自增1 redis会转换成整数类型在进行+操作 等价于 count++ 默认为零
jedis.incrByFloat("value", 12.0);
jedis.decr("count");
jedis.get("count");
jedis.getrange("bigdata", 0, 3);//包含头和尾
jedis.setrange("bigdata", 0, "de");
jedis.strlen("bibgdata");//获取字符串长度
jedis.mset("bigdata", "java", "count", "2000");//同时设置多个key的值
jedis.mget("bigdata", "count");//同时获取多个key的值
/*
集合Set 元素无序 不可重复
*/
Long s = jedis.sadd("hobbys", "eat", "drink", "play", "joy");//添加元素 返回添加元素的个数
jedis.scard("hobbys");//查询集合元素的数量
jedis.sadd("hobby2", "eat", "travel");
jedis.sdiff("hobbys", "hobby2");//求多个元素的差集
Long sdiffstore = jedis.sdiffstore("hobbys3", "hobbys", "hobbys2");//将取到的结果保存在hobbys3中
Long scard = jedis.scard("hobbys3");
Set<String> set = jedis.sinter("hobbys", "hobbys2"); //交集
//jedis.sinterstore();
jedis.sismember("hobbys", "吃");//判断集合中是否存在某个元素
jedis.smembers("hobbys");//获取集合中的元素
jedis.srandmember("", 2);//从集合中随机的取元素
jedis.spop("", 1);//随机删除元素
jedis.srem("hobbys", "吃", "玩");//从集合中删除一个或多个
//根据查询关键字 搜索集合中的元素
ScanParams scan = new ScanParams();
jedis.sadd("hobbys", "java", "js", "php", "c++", "c#");
scan.match("c*");
ScanResult<String> sr = jedis.sscan("hobbys", 0, scan);
List<String> list2 = sr.getResult();
/* 有序集合
SortedSet
元素不可重复 元素有序(根据score排序)
score值越大 排名越靠后
*/
jedis.zadd("price", 1, "1");
jedis.zadd("price", 5, "10");
jedis.zrange("price", 0, -1); //获取元素列表
jedis.zcount("price", 1, 8);//获取指定范围的元素数量
jedis.zincrby("price", 5.5, "3");//添加新的一列
jedis.zrank("price", "3");//指定建在集合的分值排名 返回新的分值
jedis.zrem("price", "3");//删除元素 删除成功返回元素的数量 失败返回零
jedis.zscore("price", "10");//获取元素的排名分值
/* List 队列
* 元素是按插入的顺序
* */
jedis.lpush("user", "v1", "v2");//向头部添加元素
jedis.rpush("user", "v3", "v4"); //向尾部追加元素
jedis.llen("user"); //返回key的长度
List<String> users = jedis.lrange("uer", 0, -1);//获取元素
jedis.lpush("users", "v1", "v2");//删除指定相同元素数量
jedis.lrem("user", 2, "v3");
//删除头部和尾部
jedis.lpop("users");
jedis.rpop("users");
/*
hash散列
*/
jedis.hset("user", "name", "zhangsan"); //添加元素
jedis.hset("user", "age", "18");
jedis.hget("user", "name");
Map<String, String> user = jedis.hgetAll("user");//获取所有值
for (Map.Entry<String, String> entry : user.entrySet()) {
System.out.println(entry.getKey() + ".." + entry.getValue());
}
jedis.hexists("user", "sex"); //判断key的字段时是存在
jedis.hincrBy("user", "age", 20);//对某个字段累加整数的值
jedis.hincrByFloat("user", "height", 1.75);//累计浮点类型的值
//获取hash的字段数量
jedis.hlen("user");
jedis.hvals("user");
jedis.hkeys("user");
jedis.hdel("user", "height", "23");
jedis.close();