redis笔记整理(一)

Redis与其数据库的不同,如下图:
在这里插入图片描述

redis提供了5种不同的数据结构:
在这里插入图片描述

  1. 对String类型的数据进行操作
    在这里插入图片描述
    /**
     * 对string类型数据进行操作
     * @param request
     * @return
     */
    @RequestMapping(value = "/opsString", method = RequestMethod.GET)
    public Map<String, Object> opsString (HttpServletRequest request){
        redisTemplate.opsForValue().set("string_set","set");
        redisTemplate.opsForValue().get("string_set");
        redisTemplate.delete("string_set");
        return new HashMap<>();
    }
  1. 对List进行操作

在这里插入图片描述

/**
     * 对集合类型进行操作
     * @param request
     * @return
     */
    @RequestMapping(value = "/opsList", method = RequestMethod.GET)
    public Map<String, Object> opsList (HttpServletRequest request){
        //左插入
        redisTemplate.opsForList().leftPush("testValue","value1");
        redisTemplate.opsForList().leftPush("testValue","value2");
        //右插入
        redisTemplate.opsForList().rightPush("testValue","value1");
        redisTemplate.opsForList().leftPop("testValue");
        redisTemplate.opsForList().rightPop("testValue");
        Object testValue1 = redisTemplate.opsForList().index("testValue", 0);

        //取出所有元素
        List testValue = redisTemplate.opsForList().range("testValue", 0, -1);
        HashMap<String, Object> objectObjectHashMap = new HashMap<>();
        objectObjectHashMap.put("size",testValue.size());
        objectObjectHashMap.put("testValue1",testValue1);
        return objectObjectHashMap;
    }
  1. 对set进行操作

在这里插入图片描述

/**
     * 对集合类型进行操作set
     * @param request
     * @return
     */
    @RequestMapping(value = "/opsSet", method = RequestMethod.GET)
    public Map<String, Object> opsSet (HttpServletRequest request){

        HashMap<String, Object> objectObjectHashMap = new HashMap<>();

        redisTemplate.opsForSet().add("testSet","setValue1");
        redisTemplate.opsForSet().add("testSet","setValue2");
        Set testSet = redisTemplate.opsForSet().members("testSet");
        objectObjectHashMap.put("set集合数量:",testSet.size());

        Boolean member = redisTemplate.opsForSet().isMember("testSet", "setValue2");
        objectObjectHashMap.put("setValue2是否存在:",member);

        Long remove = redisTemplate.opsForSet().remove("testSet", "setValue2");
        objectObjectHashMap.put("setValue2是否删除:",remove);

        return objectObjectHashMap;
    }
  1. 对hash进行操作
    在这里插入图片描述
/**
     * 对hash进行操作
     * @param request
     * @return
     */
    @RequestMapping(value = "/opsHash", method = RequestMethod.GET)
    public Map<String, Object> opsHash (HttpServletRequest request){

        HashMap<String, Object> objectObjectHashMap = new HashMap<>();

        redisTemplate.opsForHash().put("hashKey","valueKey","value");
        Object value = redisTemplate.opsForHash().get("hashKey", "valueKey");
        objectObjectHashMap.put("valueKey",value);

        Map hashKey = redisTemplate.opsForHash().entries("hashKey");
        objectObjectHashMap.put("map",hashKey.size());

        redisTemplate.opsForHash().delete("hashKey","valueKey");

        return objectObjectHashMap;
    }
  1. 对zset进行操作(稍后再做一个补充)

在这里插入图片描述

 @RequestMapping(value = "/zset", method = RequestMethod.GET)
    public Map<String, Object> zset (HttpServletRequest request){
        HashMap<String, Object> objectObjectHashMap = new HashMap<>();
        redisTemplate.opsForZSet().add("testkey","testValue",1);
        redisTemplate.opsForZSet().add("testkey","testValue",2);
        Set testkey = redisTemplate.opsForZSet().range("testkey", 0, -1);
        Set testkey1 = redisTemplate.opsForZSet().rangeByScore("testkey", 0, -1);
        return objectObjectHashMap;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值