Redis数据类型

一、Redis的五大数据类型

(1)String(字符串)
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M
(2)Hash(哈希,类似java中的Map)
Redis hash 是一个键值对集合。Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。类似Java里面的Map<String,Object>
(3)List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。它的底层实际是个链表
(4)Set(集合)
Redis的Set是string类型的无序集合。它是通过HashTable实现实现的,
(5)ZSet(有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

二、哪里去获得redis常见数据类型操作命令

Http://redisdoc.com/

三、Redis键(针对key的一些操作)

在这里插入图片描述

四、String类型

在这里插入图片描述
在这里插入图片描述
例子:
设置一个String缓存
在这里插入图片描述
获取一个String缓存
在这里插入图片描述
给缓存值加1(只针对是整数类型的value,否则会报错)
在这里插入图片描述

五、列表(List)

在这里插入图片描述

在这里插入图片描述
将a b c塞入一个list1
在这里插入图片描述
展示该list
在这里插入图片描述
在塞入一个d 进 list1
在这里插入图片描述
获取list第一个第一个元素
在这里插入图片描述
如上述:lpush+lpop就形成了一个栈,先进后出,d是最后进入list1,确最先被取出来
取出最后一个元素:如下图所示lpush+rpop 就形成一个队列,先进先出。
在这里插入图片描述

六、Set

在这里插入图片描述
设置一个 set集合
在这里插入图片描述
查看其成员
在这里插入图片描述
可以看出是无序的,但是其内部元素保持唯一

七、ZSet

在这里插入图片描述
在这里插入图片描述
例如
这里有几首歌的搜藏排名
在这里插入图片描述
查看收藏次数为200000到150000的歌曲,分数由高到低排序
在这里插入图片描述

八、Hash

在这里插入图片描述
哈希类型也是key-value结构,key是字符串类型,其value分为两个部分:field和value
其中field部分代表属性,value代表属性对应的值
在这里插入图片描述
设置一个user hash值,里面包含name 和 age
在这里插入图片描述
获取user中的age
在这里插入图片描述
获取user中的全部属性
在这里插入图片描述

关于Java连接Redis简单测试

首先需要引入redis客户端的包,这里使用的是maven引入的
在这里插入图片描述

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.1.0</version>
</dependency>

接下来我们直接看一下java是如何连接redis的。
这里我们使用Jedis去连接(jedis就是集成了redis的一些命令操作,封装了redis的java客户端)

/**
 * java连接redis测试
 * @param
 */
public static void connectRedis (){
    //连接本地的 Redis 服务
    jedis = new Jedis("192.168.220.101",6379);
    //查看服务是否运行,打出pong表示OK
    System.out.println("connection is OK==========>: "+jedis.ping());
}

这里我的Redis是安装在虚拟机上面的Linux系统上,这台虚拟机的IP地址是192.168.220.101,Redis连接的默认端口是6379.所以在Jedis中设置这些属性就可以直接访问了。
测试结果:
在这里插入图片描述
接下来我们进行简单的设置一个String类型的缓存

/**
 * 设置String 的 redis数据
 * @param key
 * @param value
 */
public static void setString(String key, String value) {
    connectRedis();
    jedis.append(key,value);
    System.out.println(jedis.get(key));
}

public static void main(String[] args) {
    setString("wqTest","Hello Redis");
}

我们来看看执行后的结果:
在这里插入图片描述
我们再去虚拟机上验证一下
在这里插入图片描述
验证是没问题了。上述的类型操作都可以在Jedis中找到对应的方法去访问。这里就不一一解释了。

下次会给大家介绍一下Redis上的数据持久化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值