栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

spring data redis 操作redis五种数据类型 实例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

spring data redis 操作redis五种数据类型 实例

导入依赖


	org.springframework.boot
	spring-boot-starter-data-redis

application.yml

spring:
  # redis配置
  redis:
    # 服务器地址
    host: 127.0.0.1
    # 端口
    port: 6379
    password:
    # 数据库
    database: 1
    # 超时时间
    timeout: 10000ms
    lettuce:
      pool:
        # 最大连接数, 默认8
        max-active: 8
        # 最大连接阻塞等待时间, 默认-1
        max-wait: 10000ms
        # 最大空闲连接, 默认8
        max-idle: 200
        # 最小空闲连接, 默认0
        min-idle: 5
logging:
  level:
    com.xxx.seckill.mapper: debug






1、操作 string (常用)
    @Autowired
    private RedisTemplate redisTemplate;

    
    @RequestMapping("/string")
    @ResponseBody
    public void string(){
        ValueOperations valueOperations = redisTemplate.opsForValue();
        // 插入一条数据
        valueOperations.set("userName","zhangsan");
        // 获取一条数据
        System.out.println(valueOperations.get("userName"));
        // 插入多条数据
        Map map = new HashMap<>();
        map.put("age","18");
        map.put("sex","1");
        valueOperations.multiSet(map);
        //获取多条数据
        List list = valueOperations.multiGet(Arrays.asList("userName", "age", "sex"));
        for (Object obj : list) {
            System.out.println(obj);
        }
        // 删除
        redisTemplate.delete("userName");
    }
}

2、操作 hash (常用)
    
    @RequestMapping("/hash")
    @ResponseBody
    public void hash(){
        HashOperations hashOperations = redisTemplate.opsForHash();
        
        hashOperations.put("userInfo","name","lisi");
        // 获取一条数据
        String name = String.valueOf(hashOperations.get("userInfo", "name"));
        System.out.println(name);

        // 插入多条数据
        Map map = new HashMap<>();
        map.put("age","20");
        map.put("sex","0");
        hashOperations.putAll("userInfo",map);

        // 获取多条数据
        List list = hashOperations.multiGet("userInfo", Arrays.asList("name", "age", "sex"));
        for (Object obj : list) {
            System.out.println(String.valueOf(obj));
        }
        // 删除 用于删除hash类型数据
        hashOperations.delete("userInfo","sex");
    }

 

3、操作 list
    
    @RequestMapping("/list")
    @ResponseBody
    public void list(){
        ListOperations listOperations = redisTemplate.opsForList();
        // 左添加一条
        listOperations.leftPush("student","zhangsan");
        // 左添加多条
        listOperations.leftPushAll("student","list","wangwu","zhaoliu");

        // 右添加一条
        listOperations.rightPush("student","xiaoming");
        // 右添加多条
        listOperations.rightPushAll("student","xiaohong","xiaohei");

        // 获取多条
        List list = listOperations.range("student", 0, 6);
        for (Object obj : list) {
            System.out.println(obj);
        }
        // 删除 从左边开始删
        listOperations.leftPop("student");
        // 删除 从右边开始删
        listOperations.rightPop("student");

        // 获取条数
        Long size = listOperations.size("student");
        System.out.println("size: "+size);
    }

 

4、操作 set

    
    @RequestMapping("/set")
    @ResponseBody
    public void set(){
        SetOperations setOperations = redisTemplate.opsForSet();
        // 添加数据
        String[] letters = new String[]{"aaa", "bbb", "ccc", "ddd", "eee"};
        setOperations.add("letters",letters);

        // 获取数据
        Set let = setOperations.members("letters");
        for (Object letter : let) {
            System.out.println(letter);
        }

        // 删除
        setOperations.remove("letters","aaa","bbb");

        Long size = setOperations.size("letters");
        System.out.println("size: "+size);
    }

5、操作 sorted set

    
    @RequestMapping("/sortedSet")
    @ResponseBody
    public void sortedSet(){
        ZSetOperations zSetOperations = redisTemplate.opsForZSet();
        // 插入单条
        zSetOperations.add("score","zhangsan",99D);
        // 插入多条
        Set> set = new HashSet<>();
        DefaultTypedTuple objectDefaultTypedTuple1 =
                new DefaultTypedTuple<>("lisi", 92D);
        DefaultTypedTuple objectDefaultTypedTuple2 =
                new DefaultTypedTuple<>("wangwu", 92D);
        DefaultTypedTuple objectDefaultTypedTuple3 =
                new DefaultTypedTuple<>("zhaoliu", 100D);
        DefaultTypedTuple objectDefaultTypedTuple4 =
                new DefaultTypedTuple<>("tianqi", 95D);
        set.add(objectDefaultTypedTuple1);
        set.add(objectDefaultTypedTuple2);
        set.add(objectDefaultTypedTuple3);
        set.add(objectDefaultTypedTuple4);
        zSetOperations.add("score",set);

        // 获取数据
        Set scores = zSetOperations.range("score", 0, 4);
        for (Object score : scores) {
            System.out.println(score);
        }

        // 删除
        zSetOperations.remove("score","zhangsan","lisi");

        // 获取总条数
        Long size = zSetOperations.size("score");
        System.out.println("size: "+size);
    } 

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号