



意思就是有外键


不用sql而是用命令

ACID安全性更高




Redis命令

下面三种是特殊类型,实际上是根据上面五种实现的。GEO是地理经纬度坐标,后两种是两个二进制编码类型
命令行中的help命令可可以帮助我们查看具体的类型有什么操作命令

或者官方网站来看





通用命令

String命令


有些命令后面可以增加很多后缀,有很多功能,比如set可以增加nx后缀,实际撒谎给你setnx命令就是和set增加nx后缀一样,setex一样
KEY层级结构



Hash类型




List类型





最后一个命令是一个阻塞命令,这个命令会等待一段时间,只要这一段时间内添加了对应的key,就会返回,同时还会返回等待时间 
阻塞队列就是有元素就取,没有元素就不取出
SET


SortSet

TreeSet是使用红黑树实现的,但是SortSet并不是

上述命令并不是全部命令,只是一些比较常用的命令
Redis的JAVA客户端


Jedis




注意这个close函数,如果有连接池并不会直接释放连接,而是归还链接

StringDataRedis







注意RedisTemplate的set方法接受的其实是一个Object类型变量而不是String。然后基于序列换转化为String,同时可以使用反序列化转化为Object
下面是RedisTemplate的序列化器与反序列化器

没有定义的时候会默认创建一个JDK的序列化器。

JDK序列化器的问题

一些其他的序列化器,主要是下面两个,第一个String的主要用于KEY,第二个Json的主要用于值


一个序列化器示例

StringRedisTemplate
这个其实就是一个手写的序列化器



