java连接redis

本文介绍了Java连接Redis的三种方式,包括使用Jedis、Jedis连接池以及SpringBoot整合Redis。详细讲述了Jedis的基本操作和连接池的使用,并讨论了SpringBoot中的StringRedisTemplate和RedisTemplate。此外,文章还探讨了Redis作为缓存的应用场景,强调了缓存的原理、作用以及数据一致性的重要性。
摘要由CSDN通过智能技术生成

大概内容:

  1. java连接redis
  2. springboot连接redis操作。
  3. 完成缓存操作
  4. redis实现分布式锁

1 连接redis

默认有三种方式连接redis.

第一种:jedis—传统的项目–ssm

第二种:lettuce:---->刚出现没有多久就被springboot整合进来。

第三种:springboot连接redis

1.1 jedis操作redis服务器

(1)引入jedis依赖

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>4.3.1</version>
</dependency>

(2)编写相关的代码

对string数据类型操作

 @Test
    public void testJedis(){
   
        Jedis jedis = new Jedis("192.168.64.130",6379);
        //该类包含很多对redis操作的方法--而这些方法和原来我们使用的命令一样。

        //redis 里的 keys *
        Set<String> keys = jedis.keys("*");
        System.out.println(keys);
        System.out.println("--------------");

      /*
            对string数据类型操作
       */
        //set key value: 设置指定 key 的值
        String set = jedis.set("k2", "你好,张三");
        System.out.println(set);

        //get key 获取指定 key 的值。
        String k2 = jedis.get("k2");
        System.out.println(k2);

        //expire key seconds: 为指定的key设置过期时间
        String setex = jedis.setex("k3", 60, "李四");
        String k3 = jedis.get("k3");
        System.out.println(k3);

        //mset key value key value … 同时设置一个或多个 key-value 对。
        String mset = jedis.mset("k4", "v4", "k5", "v5");
        System.out.println(mset);

        //mget key key … 获取所有(一个或多个)给定 key 的值。
        List<String> mget = jedis.mget("k2", "k5");
        System.out.println(mget);

        //incr key 将 key 中储存的数字值增一。减一jedis.decr()
         jedis.set("k6", "18");
         long k6 = jedis.incr("k6");
         System.out.println(k6);
    }

对hash数据类型操作

  Map<String,String> map = new HashMap<>();
        map.put("name","小林");
        map.put("age","18");
        map.put("address","海南");


        //jedis.hset("k7",map);
        //hset key field value 将哈希表 key 中的字段 field 的值设为 value
        String hget = jedis.hget("k7", "name");
        System.out.println(hget);
        //hgetall key 获取在哈希表中指定 key 的所有字段和值
        System.out.println(jedis.hgetAll("k7"));
        //hkeys key 获取所有哈希表中的字段
        System.out.println(jedis.hkeys("k7"));
        //hvals key 获取哈希表中所有值
        System.out.println(jedis.hvals("k7"));

         Map<String, String> map1 = jedis.hgetAll("k7");

        System.out.println(map1);

        //hset key field value 将哈希表 key 中的字段 field 的值设为 value
        jedis.hset("k1","name","张三");


        //hget key field 获取存储在哈希表中指定字段的值/td>
        String hget1 = jedis.hget("k1", "name");
        System.out.println(hget);

list队列

//LPush key value value value… 将一个或多个值插入到列表头部
        jedis.lpush("k8","小王","小李","小徐","小周");
        //Redis Lrange 返回列表中指定区间内的元素
        List<String> k8 = jedis.lrange("k8", 0, -1);
        System.out.println(k8);
        //lpop key 移出并获取列表的第一个元素
        List<String> k81 = jedis.lpop("k8", 1
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值