redis

1.概念:redis是一款高性能的NOSQL系列的非关系型数据库

2.操作命令:

  1.redis的数据结构:

    1.字符串类型:String

    2.哈希类型:list :map格式

    3.列表类型:list:linkedlist格式,支持重复元素

    4.集合类型:set:不允许重复元素

    5.有序集合类型 soortedset:不允许重复元素,且元素有顺序

  2.字符串类型:string

  127.0.0.1:6379> set username zhangsan
  OK
  127.0.0.1:6379> get username
  "zhangsan"
  127.0.0.1:6379> set age 23
  OK
  127.0.0.1:6379> get age
  "23"
  127.0.0.1:6379> del age 23
  (integer) 1
  127.0.0.1:6379> get age
  (nil)

  3.哈希类型:

  127.0.0.1:6379> hset myhasg username lisi
  (integer) 1
  127.0.0.1:6379> hset myhasg password 123
  (integer) 1
  1) "username"
  2) "lisi"
  3) "password"
  4) "123"
  127.0.0.1:6379> hdel myhasg username lisi
  (integer) 1
  127.0.0.1:6379> hgetall myhasg
  1) "password"
  2) "123"

  4.列表添加 list:可以添加一个元素到列表的左边或右边

    1.添加:

      1.lpush:添加到左边

      2.rpush:添加到右边

    2.获取:lrange key start end:范围获取

    3.删除:lpop key:删除最左边并返回元素

        rpop key:删除最右边元素并返回元素

127.0.0.1:6379> lpush mylist a
(integer) 1
127.0.0.1:6379> lpush mylist b
(integer) 2
127.0.0.1:6379> rpush mylist c
(integer) 3
127.0.0.1:6379> lrange  mylist 0 1
1) "b"
2) "a"
127.0.0.1:6379>  lrange  mylist 0 2
1) "b"
2) "a"
3) "c"
127.0.0.1:6379> lpop mylist
"b"

  5.集合类型 set:不允许重复元素

    1.储存:sadd 

    2.获取:smembers

    3.删除:srem

127.0.0.1:6379> sadd myset a
(integer) 1
127.0.0.1:6379> sadd myset a
(integer) 0
127.0.0.1:6379> sadd myset c b d
(integer) 3
127.0.0.1:6379> smembers myset
1) "a"
2) "c"
3) "d"
4) "b"
127.0.0.1:6379> srem myset a
(integer) 1
127.0.0.1:6379> smembers myset
1) "c"
2) "d"
3) "b"

  6.有序集合类型 sortedset:不允许重复元素,且元素有顺序

    1.储存:zadd ket score value

    2.获取:zrange key start end

    3.删除:zren key value

127.0.0.1:6379> zadd mysort 60 zhangsan
(integer) 1
127.0.0.1:6379> zadd mysort 50 lisi
(integer) 1
127.0.0.1:6379> zadd mysort 80 wangwu
(integer) 1
127.0.0.1:6379> zrange mysort 0 -1
1) "lisi"
2) "zhangsan"
3) "wangwu"
127.0.0.1:6379> zrem mysort lisi
(integer) 1
127.0.0.1:6379> zrange mysort 0 -1
1) "zhangsan"
2) "wangwu"

    7.通用命令

       1.keys *:查询所有键的名称

       2.type:查询类型

       3.del:删除指定的key

127.0.0.1:6379> key *
(error) ERR unknown command 'key'
127.0.0.1:6379> keys *
1) "name"
2) "mysort"
3) "myhasg"
4) "username"
5) "myset"
6) "mylist"
127.0.0.1:6379> type name
hash
127.0.0.1:6379> del myhasg
(integer) 1
127.0.0.1:6379> keys *
1) "name"
2) "mysort"
3) "username"
4) "myset"
5) "mylist

  3.持久化:

    1.redis是一个内存数据库,当redis服务器重启,获取电脑重启,数据会丢失,我们可以将redis内存中的数据保存到硬盘的文件中

    2.redis的持久化机制:

      1.RDB:默认方式,不需要进行配置,默认就使用这种机制

        *在一定的间隔时间中,检测key的变化情况,然后持久化数据

      2.AOF:日志记录的方式,可以记录每一条命令的操作。可以每一次命令操作后,持久化数据

4.java客户端 jedis

  1.导入jar包

  2.使用

    Jedis jedis =new Jedis("localhost","6379");

    jedis.set("username","zhangsan");

    jedis.close

 

posted @ 2023-01-16 01:01  会秃头的小白  阅读(15)  评论(0编辑  收藏  举报