• redis数据类型之string,list


      redis是干啥的就不多说了,我这里使用windows版的redis,redis是基于内存的,单进程单线程的非关系型数据库,不需要考虑什么线程安全;

      想要慢慢的深入redis就要耐下心来从最基本的命令开始慢慢敲一遍,害

    1. redis启动脚本

      下载完之后目录应该是下图这样的,我们启动一般是redis-server.exe redis.windows.conf启动的,这样可以根据不同配置文件启动的redis服务也是不同的

      便于后期的测试,我们写一个启动的脚本,就把上面那一行命令复制到一个txt文件,然后修改文件后缀为.bat,以后只需要双击这个bat文件就能启动redis服务端,然后点击redis-cli.exe就能连接上了;

    2.数据类型

      redis中有五种数据类型,分别是zset,set,list,hash和string,其实就是和java中那几种集合差不多

      下面我们分别看看这几种数据的用法;

      2.1 string

      字符串是最常用的数据类型了,操作的命令:

      set/get:存放/获取键值对

      getset: 首先获取key对应的值,并且覆盖原来的值;

      mset/mget: 可以一次性保存/获取多个键值对

      strlen: 获取键对应的值得长度

      append: 给键对应的值附加字符串,返回的是最终字符串的长度 

      getrange:字符串切割

      setex/psetex: 和set命令一样使用,只不过这里可以设置超时时间,时间过了就删除这个键值对,前者单位事秒,后者是毫秒

      setnx: 这个命令真的很重要!!!redis实现分布式锁就是基于这个命令的,当redis没有指定的key的时候,就存我们传进去的键值对;有指定key就啥也不干

     

      msetnx: 这是setnx强化版,可以同时设置多个键值对

      decr/incr: 自减一和自加一,就是i--和i++

      

      decrby/incrby: 上面的命令每次只能减一/加一,这个命令可以指定减数/加数

      2.2 list

      很多个人觉得这个list像java中的List<T>,其实我觉得像java中List<List<T>>这种类型才对,而且redis中的list可以从头部插入元素lpush,从尾部插入元素rpush

      特点:元素有序,可重复

     

      lpush:创建一个list,并每次从头部(或者说左边)向其中添加多个元素,元素可以重复

      lrange: 遍历list中所有元素

      rpush: 每次从尾部向list添加元素

      lpushx/rpushx: 向list添加元素之前,要保证这个list必须存在,用法和lpush/rpush一样;(这个x是exist的简写)

     

      lpop/rpop: 拿到头部/尾部元素,并删除list中对应的该元素

      llen: 获取指定list中元素的数量

     

      lset: 修改列表中指定位置的值

      lindex: 获取列表中指定位置的值

     

      lrem: 删除指定数量的重复元素

      ltrim:切割一部分的列表为我所用

     

      linsert: 从头到尾匹配到指定元素,在这个元素之前/之后 插入指定元素  ,下面的before是之前,用after是之后 

    --------------以上皆原创,给未来的自己留下一点学习的痕迹!--------
  • 相关阅读:
    MyBatis学习存档(3)——mapper.xml映射文件
    Springboot Idea热部署以及重启后代码也不生效的问题解决
    属性值为空不更新到数据库工具类
    Poi工具类快速生成Ecxel
    Nginx配置ssl,实现https访问
    商城多商品组合数据格式
    Nginx泛解析配置
    Java支付宝支付接入流程,wap,app接入方式
    springboot配置@ResponseBody注解依然返回xml格式的数据
    通过aop记录日志,记录修改前后的数据,精确到每个字段
  • 原文地址:https://www.cnblogs.com/wyq1995/p/14335677.html
Copyright © 2020-2023  润新知