nosql-redis整合测试

nosql-redis整合测试

1、创建项目并导入redis

2、配置redis

3、写测试类

4、在redis中创建key

5、访问8082

6、在集成测试中测试方法

java 复制代码
package com.example.boot3.redis;

import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ZSetOperations;

import java.util.UUID;

@SpringBootTest
class Boot307RedisApplicationTests {
    @Autowired
    StringRedisTemplate redisTemplate;

    //    常见的数据类型 k:v value可以有很多类型
    //    string: 普通字符串: redisTemplate.opsForValue()
    //    list: 列表: redisTemplate.opsForList()
    //    set: 集合: redisTemplate.opsForSet()
    //    zset: 有序集合: redisTemplate.opsForZSet()
    //    hash: map结构: redisTemplate.opsForHash()
    @Test
    void contextLoads() {
        redisTemplate.opsForValue().set("haha", UUID.randomUUID().toString());
        String haha = redisTemplate.opsForValue().get("haha");
        System.out.println(haha);
    }

    @Test
    void testList(){
        String listName = "listtest";
        redisTemplate.opsForList().leftPush(listName,"1");
        redisTemplate.opsForList().leftPush(listName,"2");
        redisTemplate.opsForList().leftPush(listName,"3");
        String pop = redisTemplate.opsForList().leftPop(listName);
        Assertions.assertEquals("3",pop);
    }

    @Test
    void testSet(){
        String setName = "setest";
        redisTemplate.opsForSet().add(setName,"1","2");
        Boolean aBoolean = redisTemplate.opsForSet().isMember(setName,"2");
        Assertions.assertTrue(aBoolean);
        Boolean aBoolean1 = redisTemplate.opsForSet().isMember(setName, "5");
        Assertions.assertFalse(aBoolean1);

    }

    @Test
    void testZSet(){
        String setName = "zsetest";
        redisTemplate.opsForZSet().add(setName,"类放羊",90.00);
        redisTemplate.opsForZSet().add(setName,"张三",91.00);
        redisTemplate.opsForZSet().add(setName,"李四",91.20);
        redisTemplate.opsForZSet().add(setName,"王五",92.00);
        ZSetOperations.TypedTuple<String> popMax = redisTemplate.opsForZSet().popMax(setName);
        String value = popMax.getValue();
        Double score = popMax.getScore();
        System.out.println(value + "==>" + score);
    }

    @Test
    void testHash(){
        String mapName = "amap";
        redisTemplate.opsForHash().put(mapName,"name","张三");
        redisTemplate.opsForHash().put(mapName,"age","18");

        System.out.println(redisTemplate.opsForHash().get(mapName,"name"));
        System.out.println(redisTemplate.opsForHash().get(mapName,"age"));
    }

}
相关推荐
姜太小白15 分钟前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
窝子面42 分钟前
手搓最简前后端协作-node
javascript·数据库
吳所畏惧1 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈1 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
HPFBoy1 小时前
log4net 数据库存日志正确配置
数据库
赵丙双1 小时前
Redis 概率相关的数据类型
redis
liuxiaowei32 小时前
【绝版教程】新版MySQL DBA高级实战进阶班 MySQL8.0 姜承尧-腾讯数据库总监
数据库·mysql·dba
破碎的南瓜2 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
吠品3 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
SelectDB4 小时前
Apache Doris Variant 动态 JSON 实战教程:从建表到跑通 100M Agent 日志查询
数据库