依赖

        <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
@SpringBootTest
class SpringBootTestApplicationTests {

@Resource
StringRedisTemplate stringRedisTemplate;

@Test
void StringRedis() {
stringRedisTemplate.opsForValue().set("name", "张三");
//获取
        String s = stringRedisTemplate.opsForValue().get(name);
        //设置过期时间10s
stringRedisTemplate.expire("name", 10, TimeUnit.SECONDS);
}

@Test
void ListRedis() {
List list = new ArrayList<>();
list.add("aaah");
list.add("bbb3");
list.add("ccc2");
// 所有的集合作为一条数据进行储存 rightPush :从尾部添加
stringRedisTemplate.opsForList().rightPush("list1", list.toString());
// leftPush :从头部添加
stringRedisTemplate.opsForList().leftPush("list2", list.toString());
// 作为n数据进行储存
stringRedisTemplate.opsForList().rightPushAll("list5", list);
// list集合获取启始到结束的集合
List<String> list1 = stringRedisTemplate.opsForList().range("list1", 0, -1);
List<String> list5 = stringRedisTemplate.opsForList().range("list5", 0, -1);
System.out.println("list1 :" + list1);
System.out.println("list5 :" + list5);

// list1 :[[aaah, bbb3, ccc2], [aaah, bbb3, ccc2]]
// list5 :[aaah, bbb3, ccc2, aaah, bbb3, ccc2]
}

@Test
void SetRedis() {
// 无序不可以重复的集合
stringRedisTemplate.opsForSet().add("z1a", "aaa", "bbb", "ddd", "ccc", "aaa");
// set获取
Set<String> z1a = stringRedisTemplate.opsForSet().members("z1a");
System.out.println(z1a);
// [aaa, bbb, ddd, ccc]
// 查看个数
Long z1a1 = stringRedisTemplate.opsForSet().size("z1a");
System.out.println("z1a1:" + z1a1);
// z1a1:4

}

@Test
void ZSetRedis() {
// 有序不可以重复的集合
stringRedisTemplate.opsForZSet().add("z1b", "aaa", 22);
stringRedisTemplate.opsForZSet().add("z1b", "ccc", 11);
stringRedisTemplate.opsForZSet().add("z1b", "ddd", 33);
// zset 从小到大获取
Set<String> z1b = stringRedisTemplate.opsForZSet().range("z1b", 0, -1);
System.out.println("z1b:" + z1b);
// z1b:[ccc, dd, aaa, bbb, ddd]
// zset 从大到小获取
Set<String> strings = stringRedisTemplate.opsForZSet().reverseRange("z1b", 0, -1);
System.out.println("strings:"+strings);
// strings:[ddd, bbb, aaa, dd, ccc]
}

@Test
void HashRedis() {
stringRedisTemplate.opsForHash().put("user", "name", "小明");
stringRedisTemplate.opsForHash().put("user", "pass", "123456");
stringRedisTemplate.opsForHash().put("user", "age", "15");
// 获取单个
Object o = stringRedisTemplate.opsForHash().get("user", "name");
System.out.println("o:" + o); //o:小明
// 获取所有
Map<Object, Object> user = stringRedisTemplate.opsForHash().entries("user");
System.out.println("user:" + user);
// user:{name=小明, pass=123456, age=15}
}

}

redis的基本数据类型测试的更多相关文章

  1. 面试官:讲讲Redis的五大数据类型?如何使用?(内含完整测试源码)

    写在前面 最近面试跳槽的小伙伴有点多,给我反馈的面试情况更是千差万别,不过很多小伙伴反馈说:面试中的大部分问题都能够在我的公众号[冰河技术]中找到答案,面试过程还是挺轻松的,最终也是轻松的拿到了Off ...

  2. redis中各种数据类型对应的jedis操作命令

    redis中各种数据类型对应的jedis操作命令 一.常用数据类型简介: redis常用五种数据类型:string,hash,list,set,zset(sorted set). 1.String类型 ...

  3. redis安装及数据类型简介(string、list、set、sorted_set、hash)

    一:简介: redis国内最大的案例--->新浪微博 memcache:是key-value数据库 数据类型:只支持key value数据 过期策略:支持 持久化:不支持(可以通过三方程序) 主 ...

  4. Redis介绍及Jedis测试

    1.Redis简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes ...

  5. JAVAEE——宜立方商城06:Redis安装、数据类型和持久化方案、Redis集群分析与搭建、实现缓存和同步

    1. 学习计划 1.首页轮播图展示 2.Redis服务器搭建 3.向业务逻辑中添加缓存. 4.使用redis做缓存 5.缓存同步. 2. 首页轮播图动态展示 2.1. 功能分析 根据分类id查询内容列 ...

  6. 什么是redis?Reids的特点是什么?Redis支持的数据类型有哪些?

    首先,分布式缓存框架 可以 看成是nosql的一种 (1)什么是redis? redis 是一个基于内存的高性能key-value数据库. (有空再补充,有理解错误或不足欢迎指正) (2)Reids的 ...

  7. 【Redis】基本数据类型及命令操作(超详细)

    一.String 1.1 概述 1.2 相关命令列表 1.3 命令示例 二.List 2.1 概述: 2.2 相关命令列表: 2.3 命令示例: 2.4 链表结构的小技巧: 三.Hashes 3.1 ...

  8. redis五种数据类型的使用(zz)

    redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...

  9. 记一次Redis和NetMQ的测试

    Redis是一个高速缓存K-V数据库,而NetMQ是ZeroMQ的C#实现版本,两者是完全不同的东西. 最近做游戏服务器的时候想到,如果选择一个组件来做服务器间通信的话,ZeroMQ绝对是一个不错的选 ...

  10. redis实现主从复制-单机测试

    一.redis实现主从复制-单机测试1.安装redis tar -zxvf redis-2.8.4.tar.gzcd redis-2.8.4make && make install2. ...

随机推荐

  1. PackageManager

    /* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Versi ...

  2. RK3588平台产测之ArmSoM-W3 DDR压力测试

    1. 简介 RK3588从入门到精通 ArmSoM团队在产品量产之前都会对产品做几次专业化的功能测试以及性能压力测试,以此来保证产品的质量以及稳定性 优秀的产品都要进行多次全方位的功能测试以及性能压力 ...

  3. C#学习笔记--面向对象三大特征

    C#核心 面向对象--封装 用程序来抽象现实世界,(万物皆对象)来编程实现功能. 三大特性:封装.继承.多态. 类与对象 声明位置:namespace中 样式:class 类名{} 命名:帕斯卡命名法 ...

  4. Pandas 读取Eexcel - 间隔N行,读取某列数据

    间隔N行,读取某列数据 import pandas as pd def read_vertical(sheet_name, col_idx, gap): """ 竖着读数 ...

  5. 3款免费又好用的 Docker 可视化管理工具

    前言 Docker提供了命令行工具(Docker CLI)来管理Docker容器.镜像.网络和数据卷等Docker组件.我们也可以使用可视化管理工具来更方便地查看和管理Docker容器.镜像.网络和数 ...

  6. OpenGL 坐标系统详解

    GL中的坐标系是标准设备坐标,即他的每个坐标轴的取值范围都是[-1.0,1.0].通常,我们输入到顶点着色器中的顶点坐标都会被转换为标准化设备坐标,然后进行光栅化,转变成屏幕坐标.然而事实上,从顶点坐 ...

  7. PZthon

    一道新式题目,python.exe的分析 这个时候没有思路不要紧,直接wp 先用特别的软件执行.exe程序,就是对.exe进行反编译 然后在反编译脚本的目录写就有了一个打包文件夹 在里面找到文件的.p ...

  8. DP:摆动序列

    问题描述 如果一个序列满足下面的性质,我们就将它称为摆动序列: 1. 序列中的所有数都是不大于k的正整数: 2. 序列中至少有两个数. 3. 序列中的数两两不相等: 4. 如果第i – 1个数比第i ...

  9. MySQL-安全更新参数

    版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin 注意! 生产环境中,updata必须要加where条件 1.开启安全功能,会提示你加where,不加会提示语法不正确. ...

  10. 【Javaweb】六-servlet层

    AdminServlet.jap @WebServlet("/AdminServlet") public class AdminServlet extends HttpServle ...