RedisAPI操作

重新安装Redis,在root用户下

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

make一下在这里插入图片描述

修改配置文件在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改的三个地方

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

API操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

事务

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

API代码

package redis;

import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.BinaryClient;
import redis.clients.jedis.Jedis;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class redisTest {
    Jedis jedis=null;
    @Before
    public void testConnection(){
        jedis=new Jedis("192.168.184.132",6379);
        //String ping = jedis.ping();
        //System.out.println(ping);
    }
    @Test
    public void testRedisString(){
        //jedis.set("k1","v1");
        //jedis.append("k1", "666");
        //Long k1 = jedis.strlen("k1");
        //jedis.set("k2","1");
        //jedis.incr("k2");
        jedis.mset("k3","v3","k4","v4");
        List<String> mget = jedis.mget("k1", "k2", "k3", "k4");
        //String v1 = jedis.get("k2");
        //System.out.println(v1);
        System.out.println(mget.get(0)+"\t"+mget.get(1)+"\t"+mget.get(2)+"\t"+mget.get(3));
    }
    @Test
    public void testRedisList(){
        //jedis.lpush("l1","1","2","3","4");
        //jedis.rpush("l1","5","6","7","8");
        //List<String> l1 = jedis.lrange("l1", 0, -1);
        //for (String s:l1){
          //  System.out.println(s);
        //}
        //String lindex = jedis.lindex("l1", 0);
        //System.out.println(lindex);
        //jedis.linsert("l1",BinaryClient.LIST_POSITION.BEFORE,"5","666666");
        //jedis.lrem("l1",1,"666666");
        //jedis.lset("l1",4,"0");
        //jedis.lpush("l2","666");
        jedis.rpoplpush("l1","l2");
    }
    @Test
    public void testRedisset(){
        //jedis.sadd("s1","1","2","3","4");
        //Set<String> s1 = jedis.smembers("s1");
        //for(String s:s1){
         //   System.out.println(s);
        //}
        //Boolean s1 = jedis.sismember("s1", "5");
        //System.out.println(s1);
        //Long s1 = jedis.scard("s1");
        //jedis.srem("s1","4");
        //String s1 = jedis.srandmember("s1");
//        jedis.sadd("s2","1","2","4");
//        Set<String> sinter = jedis.sinter("s1", "s2");
//        for(String s:sinter) {
//            System.out.println(s);
//        }
//        jedis.sinterstore("s3","s1","s2");
//        Set<String> s3 = jedis.smembers("s3");
//        for(String s:s3){
//           System.out.println(s);
//        }
//        jedis.sdiffstore("s4", "s2", "s1");
//        Set<String> s4 = jedis.smembers("s4");
//        for(String s:s4){
//          System.out.println(s);
//        }

    }
    @Test
    public void TestRedisHash(){
//        jedis.hset("h1","name","zhangsan");
//        String hget = jedis.hget("h1", "name");
//        System.out.println(hget);
//        HashMap<String,String> hashMap=new HashMap<>();
//        hashMap.put("age","18");
//        hashMap.put("sex","man");
//        jedis.hmset("h1",hashMap);
//        List<String> hmget = jedis.hmget("h1", "name", "age", "sex");
//        Map<String, String> h1 = jedis.hgetAll("h1");
//        for(String key:h1.keySet()){
//            String value = h1.get(key).toString();
//            System.out.println("key:"+key+"\t"+"value:"+value);
//        }
//        Set<String> h1 = jedis.hkeys("h1");
//        for(String s:h1){
//           System.out.println(s);
//        }
        //jedis.hincrBy("h1","age",5);
    }
    @Test
    public void TestRedisZset(){
       //jedis.zadd("z1",100,"zv3");
//        Double zscore = jedis.zscore("z1", "zv1");
//        System.out.println(zscore);
//        Set<String> z1 = jedis.zrange("z1", 0, -1);
        //for(String s:s1){
        //   System.out.println(s);
        //}

//        Set<String> z1 = jedis.zrangeByScore("z1", 80, 96);
//        for(String s:z1){
//          System.out.println(s);
//        }
//        Long z1 = jedis.zcard("z1");
        Long z2 = jedis.zcount("z1", 80, 96);
        Long zrank = jedis.zrank("z1", "zv3");
        System.out.println(z1+"==="+z2+"===="+zrank);
        

    }
}

Jedis jedis = new Jedis("127.0.0.1", 6379);// 连接redis
		// -------------------- 字符串类型----------------------------
		jedis.set("a", "我是a");// 字符串增加单个值 set key value
		jedis.get("a");// 字符串获取单个值 get key
		jedis.mset("b", "c", "c", "c");// 字符串设置多个值 mset key value value value ...
		jedis.set("number", "1");
		jedis.incr("number");// 字符串自增+1 incr key
		jedis.incrBy("number", 10);// 字符串自增 incyby key number
		jedis.decr("number");// 字符串自减-1 drcrby key
		jedis.incrByFloat("number", 0.23456);// 自增float, incrbyfloat key floatValue
		jedis.append("number", "asdasdasd");// 在字符后面追加 append key value
		jedis.strlen("number");// 获取字符长度 strlen key
		jedis.getSet("number", "getset");// 先get后set getset key value
		jedis.getrange("number", 0, -1);// 获取部分字符 getrange key start end
		jedis.setrange("number", 0, "index");// 给字符的指定下标更新值  setrange key index value
 
		// --------------------list集合类型--------------------------
		jedis.lpush("list", "4"); // 从左边插入元素  lpush key value value value ...
		jedis.rpush("list", "3");// 从右边插入元素  rpush key value value ...
		jedis.linsert("list", BinaryClient.LIST_POSITION.AFTER, "4", "insert");// 在某个元素前或者后面插入元素 linsert key before/after key's_value newValue
		jedis.lpop("list");// 从集合的最左边删除一个元素 lpop key
		jedis.rpop("list");// 从集合的最右边删除一个元素 rpop key
		jedis.lrem("list", 1, "4");// 删除1个指定元素 lrem key count value
		jedis.ltrim("list", 0, 2);// 把原来的集合列表重新裁剪,重新保存 ltrim key start end
		jedis.lset("list", 0, "wwwewqqwew");// 更新集合指定下标的值 lset key index newValue
		jedis.lrange("list", 0, -1);// 获取指定范围内的元素 lrange key start end
		jedis.lindex("list", 0);// 获取集合下标是0的元素值 lindex key index
		jedis.llen("list");// 获取集合长度 llen key
		
		// --------------------set无序集合类型--------------------------
		jedis.sadd("set", "1","2","3","4");//给一个set集合设值 sadd key value value value ...
		jedis.srandmember("set",10);//从set集合里随机返回10个元素  srandmember key count
		jedis.smembers("set");//返回set集合所有的元素 smembers key
		jedis.scard("set");//返回set集合元素的个数  scard key
		jedis.sismember("set", "isExistsValue");//查看某一个元素是否在集合内  sismember key value
		jedis.srem("set", "1","2","3");//批量删除指定元素,可以删除一个,也可以删除多个 srem key value value ....
		jedis.spop("set");//从set集合里面随机删除一个元素 spop key
		jedis.spop("set", 10);//从set集合里面随机删除10个元素 spop key count
		jedis.sinter("set","set2");//求集合间的交集 sinter key key
		jedis.sunion("set","set2");//求集合间的并集 sunion key key
		jedis.sdiff("set","set2");//求集合间的补集 sdiff key key
		jedis.sinterstore("set", "set2");//求出交集并把交集新建为一个set类型的集合 sinterstore key key
		jedis.sunionstore("set", "set2");//求出并集,并新建一个set类型的集合 sunionstore key key
		jedis.sdiffstore("set", "set2");//求出补集,并新建一个set类型的集合 sdiffstore key key
		
		// --------------------hash类型--------------------------
		//hash类型的数据结构 形如  key:{{filed:value},{field:value} ...}
		jedis.hset("hash", "field", "value");//hash设置单个值 hset key field value
		jedis.hget("hash", "1");//获取dangefield的值 hget key field
		jedis.hmget("hash", "1","2","3");//批量获取field    hmget key value value value ...
		jedis.hlen("hash");//获取hash的field个数   hlen key
		jedis.hexists("hash", "1");//查看field == 1的元素是否存在  hexists key field
		jedis.hkeys("hash");//獲取hash所有的field   hkeys key
		jedis.hvals("hash");//獲取hash所有的value   hvals key
		jedis.hgetAll("hash");//獲取所有的field-value hgetall key
		
		Map<String,String> map = new HashMap<String,String>();
		map.put("1", "1");
		map.put("2", "2");
		map.put("3", "3");
		map.put("4", "4");
		jedis.hmset("number", map);//批量设值hash值 hmset key field value field value field value field value....
		                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
		jedis.hdel("number", "1","2");//批量删除hash中的field元素
		jedis.hincrBy("number", "1", 10);//把field ==1 的field增加10
		jedis.hincrByFloat("number", "1", 0.23);//把field == 1的value值增加0.23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值