redis入门

下载地址:

Releases · microsoftarchive/redis · GitHub

 参考:Windows 安装 Redis(.msi)

启动服务

切换到redis根目录,打开cmd,执行下面命令,启动redis服务

(redis服务生命周期与cmd窗口共存,关闭即停止)

redis-server.exe redis.windows.conf

或双击这个程序

 连接服务

在新建一个cmd,输入如下命令,连接redis服务,进入redis命令行

redis-cli.exe -h 127.0.0.1 -p 6379

或双击这个程序

基础操作  set 、 get、del

String (字符串)

127.0.0.1:6379> set  params   1232aa131
OK
127.0.0.1:6379> get params
"1232aa131"
127.0.0.1:6379> set  params1   "1232aa131"
OK
127.0.0.1:6379> get  params1
"1232aa131"
127.0.0.1:6379> del parmas
(integer) 0
127.0.0.1:6379> del params1
(integer) 1
127.0.0.1:6379> del params
(integer) 1
127.0.0.1:6379>

Hash(哈希)存储  HMSET  、HGET 、HGETALL 

127.0.0.1:6379> HMSET string_map  name1  hollow  name2  world  name3  !
OK
127.0.0.1:6379> HGET  string_map  name1
"hollow"
127.0.0.1:6379> HGET  string_map  name2
"world"
127.0.0.1:6379> HGET  string_map  name3
"!"
127.0.0.1:6379> HGETALL  string_map
1) "name1"
2) "hollow"
3) "name2"
4) "world"
5) "name3"
6) "!"
127.0.0.1:6379> del string_map
(integer) 1
127.0.0.1:6379>

List(列表)

lpush   从队列头(左)加入 一个或多个元素

lrange  打印出指定范围的元素  (0,-1)打印全部

rpush   从队列尾(右)加入 一个或多个元素

llen       获取队列长度

lindex   根据索引获取元素

lpop      移除队首元素,并返回

rpop      移除队尾元素,并返回

lrem       移除n个指定元素,指定数量为正整数,从队首开始删除;

                                             指定数量为负整数,从队尾开始删除

lset        根据索引设置(修改)元素内容

ltrim       删除指定区间以外的元素,(0,-1)全区间

lpushx     为已存在的列表的队首加入元素 

rpushx     为已存在的列表的队尾加入元素 

127.0.0.1:6379> lpush string_list  java
(integer) 1
127.0.0.1:6379> lpush string_list  c++
(integer) 2
127.0.0.1:6379> lpush string_list  python
(integer) 3
127.0.0.1:6379> lpush string_list  vue
(integer) 4
127.0.0.1:6379> lrange string_list 0 10
1) "vue"
2) "python"
3) "c++"
4) "java"
127.0.0.1:6379> rpush string_list go
(integer) 5
127.0.0.1:6379> lrange string_list 0 10
1) "vue"
2) "python"
3) "c++"
4) "java"
5) "go"
127.0.0.1:6379> llen string_list
(integer) 5
127.0.0.1:6379> lindex string_list 2
"c++"
127.0.0.1:6379> lindex string_list 0
"vue"
127.0.0.1:6379> lpush string_list 1 2 3 4 5
(integer) 10
127.0.0.1:6379> lrange string_list 0 10
 1) "5"
 2) "4"
 3) "3"
 4) "2"
 5) "1"
 6) "vue"
 7) "python"
 8) "c++"
 9) "java"
10) "go"
127.0.0.1:6379> rpush string_list 1 2 3 4 5
(integer) 15
127.0.0.1:6379> lrange string_list 0 20
 1) "5"
 2) "4"
 3) "3"
 4) "2"
 5) "1"
 6) "vue"
 7) "python"
 8) "c++"
 9) "java"
10) "go"
11) "1"
12) "2"
13) "3"
14) "4"
15) "5"
127.0.0.1:6379> lpop string_list
"5"
127.0.0.1:6379> lrange string_list 0 20
 1) "4"
 2) "3"
 3) "2"
 4) "1"
 5) "vue"
 6) "python"
 7) "c++"
 8) "java"
 9) "go"
10) "1"
11) "2"
12) "3"
13) "4"
14) "5"
127.0.0.1:6379> rpop string_list
"5"
127.0.0.1:6379> lrange string_list 0 20
 1) "4"
 2) "3"
 3) "2"
 4) "1"
 5) "vue"
 6) "python"
 7) "c++"
 8) "java"
 9) "go"
10) "1"
11) "2"
12) "3"
13) "4"
127.0.0.1:6379> lrange string_list 0 -1
 1) "4"
 2) "3"
 3) "2"
 4) "1"
 5) "vue"
 6) "python"
 7) "c++"
 8) "java"
 9) "go"
10) "1"
11) "2"
12) "3"
13) "4"
127.0.0.1:6379> lrem string_list -2 sasda
(integer) 0
127.0.0.1:6379> lrem string_list -2  3
(integer) 2
127.0.0.1:6379> lrange string_list 0 -1
 1) "4"
 2) "2"
 3) "1"
 4) "vue"
 5) "python"
 6) "c++"
 7) "java"
 8) "go"
 9) "1"
10) "2"
11) "4"
127.0.0.1:6379> lset string_list 0   199
OK
127.0.0.1:6379> lrange string_list 0 -1
 1) "199"
 2) "2"
 3) "1"
 4) "vue"
 5) "python"
 6) "c++"
 7) "java"
 8) "go"
 9) "1"
10) "2"
11) "4"
127.0.0.1:6379> ltrim string_list 3 7
OK
127.0.0.1:6379> lrange string_list 0 -1
1) "vue"
2) "python"
3) "c++"
4) "java"
5) "go"
127.0.0.1:6379> ltrim string_list 0 -1
OK
127.0.0.1:6379> lrange string_list 0 -1
1) "vue"
2) "python"
3) "c++"
4) "java"
5) "go"
127.0.0.1:6379> lpushx nsadsa   a
(integer) 0
127.0.0.1:6379> lrange nsadsa  0 -1
(empty list or set)
127.0.0.1:6379> lpushx string_list   a
(integer) 6
127.0.0.1:6379> lrange string_list 0 -1
1) "a"
2) "vue"
3) "python"
4) "c++"
5) "java"
6) "go"
127.0.0.1:6379> rpushx nsadsa   a
(integer) 0
127.0.0.1:6379> lrange nsadsa  0 -1
(empty list or set)
127.0.0.1:6379> rpushx string_list   a
(integer) 7
127.0.0.1:6379> lrange string_list 0 -1
1) "a"
2) "vue"
3) "python"
4) "c++"
5) "java"
6) "go"
7) "a"
127.0.0.1:6379> 

Set(集合)

sadd     向指定集合添加一个或多个元素

smembers    返回指定集合内所有元素

scard        返回指定集合的元素数量

sdiff        返回第一个集合比第二个集合多出哪些元素

sismember   判断一个元素是否存在于指定集合中,存在返回1,不存在返回0

127.0.0.1:6379> sadd string_set  java
(integer) 1
127.0.0.1:6379> sadd string_set  c++
(integer) 1
127.0.0.1:6379> sadd string_set  python
(integer) 1
127.0.0.1:6379> smembers string_set
1) "python"
2) "c++"
3) "java"
127.0.0.1:6379> scard string_set
(integer) 3
127.0.0.1:6379> sadd set1  1 2 3 4 5 6
(integer) 6
127.0.0.1:6379> smembers set1
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
6) "6"
127.0.0.1:6379> sdiff string_set  set1
1) "c++"
2) "python"
3) "java"
127.0.0.1:6379> sismember set1 sad
(integer) 0
127.0.0.1:6379> sismember set1 1
(integer) 1
127.0.0.1:6379>
127.0.0.1:6379>
127.0.0.1:6379>

zset(sorted set:有序集合)

zadd     添加元素(优先级,值)

zrange    返回从小到大排列

zrevrange     返回从大到小排列

127.0.0.1:6379> zadd set2 2 2 1 1
(integer) 2
127.0.0.1:6379> zrange set2 0 10
1) "1"
2) "2"
127.0.0.1:6379> zrange set2 0 10 withscores
1) "1"
2) "1"
3) "2"
4) "2"
127.0.0.1:6379> zrevrange set2 0 10
1) "2"
2) "1"
127.0.0.1:6379>

普通redis操作jedis,有点类似jdbc​​​​​​​

引入依赖

        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.8.0</version>
        </dependency>
        //1 获取连接
        Jedis jedis = new Jedis("localhost",6379);
        
        //2 存放内容
        jedis.set("password","123456");

        String value = jedis.get("username");
        System.out.println(value);

        jedis.del("username");

        jedis.hset("myhash","addr","bj");
        String hValue = jedis.hget("myhash", "addr");
        System.out.println(hValue);

        Set<String> keys = jedis.keys("*");
        for (String key : keys) {
            System.out.println(key);
        }

        //3 关闭连接
        jedis.close();

springboot集成redis

(1)引入依赖

  <!-- redis -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

(2)加redis配置

spring: 
  redis:
    database: 0    # 使用的数据库(0-15),默认为0
    host: localhost
    port: 6379
    password: 

(3)测试使用

    @Autowired
    private StringRedisTemplate stringRedisTemplate;

    @RequestMapping(value = "/{key}/{value}",method = RequestMethod.GET)
    @ResponseBody
    public String set(@PathVariable String key, @PathVariable String value) {

        stringRedisTemplate.opsForValue().set(key,value);
        return "操作成功!";
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值