在使用redis之前,有一款免费的redis 图形化界面 十分好用,需要的话关注我点赞该博文私信领取
与mysql不同的是mysql是存储在磁盘当中的,用表格对数据进行展示,redis是存储在内存中的,读写速度相对较快
redis 基本数据类型
1.字符串类型 redis 中最简单的数据类型
2. hash 也叫散列,类似于java中hashmap结构 ,一个大key中 单个key 对应单个value
可以这样解释 类似于你创建一个表 也就是 大key , 然后 这个表中 有多个 key, 每个key 对应一个相应的value
3. 列表 list 按照插入顺序排序 ,可以有重复元素
4.集合 set 无序集合,没有重复元素 类似于java中hashset
5.有序集合 zset 集合中每个元素关联一个score,根据分数升序排序,没有重复元素
字符串类型
这里面的key 是自己创建的一个字符串 value 也是自己创建字符串 具体如下
set name wang 其中 name对应key wang 对应value
setex age 10 zhen 其中 10代表创建后10秒过期 age是key zhen 是value
hash操作类型
hset people name wang 其中 people 是一个类似于存储多个 key value的集合
其中 id是自增的
列表 操作命令
可以有重复元素
lpush 代表左插,那么相应的,rpush就代表右插喽
第二个获取列表指定范围的元素 ,也是从0索引开始,跟数组类似
下面是 一个列表
这是操作后返回的数据
集合操作命令
redis使用的数据结构是hash表 ,无法存入重复数据
添加一个set集合
发现存储出来的结构是无序的
我们发现返回集合的所有元素,返回的数据也是无序返回的
有序集合操作命令
以上命令可以看出 zrange命令 根据逆序 返回范围中的成员
但是 zset集合是通过根据分数逆序排序的
springDateRedis使用
编写配置类
@Configuration
public class RedisConfiguration {
@Bean
@ConditionalOnMissingBean
public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){
//创建redis模板对象
RedisTemplate redisTemplate = new RedisTemplate();
//连接模板工厂
redisTemplate.setConnectionFactory(redisConnectionFactory);
//设置redis的序列化器
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
redisTemplate.setHashValueSerializer(new StringRedisSerializer());
// redisTemplate.setValueSerializer(new StringRedisSerializer());
return redisTemplate;
}
}
编写好配置之后,我们想使用 直接用@autowired注解直接注入bean 即可