# redis-type-use **Repository Path**: chubbiness/redis-type-use ## Basic Information - **Project Name**: redis-type-use - **Description**: 基于Springboot2.6.6+mybatis-plus + mysql+redis7.0实现redis基本功能(包含5种基本数据类型) - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-15 - **Last Updated**: 2026-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Redis 数据类型操作示例 一个展示 Spring Boot 中 Redis 各种数据类型操作的示例项目。 ## 项目简介 本项目演示了在 Spring Boot 应用程序中使用 Redis 的各种数据类型,包括: - **String** - 字符串操作 - **Hash** - 哈希表操作 - **List** - 列表操作 - **Set** - 集合操作 - **ZSet** - 有序集合操作(排行榜场景) ## 技术栈 - Spring Boot - Redis - MyBatis Plus - MySQL - Jackson (JSON 处理) ## 快速开始 ### 环境要求 - JDK 1.8+ - Maven 3.6+ - Redis 服务 - MySQL 服务 ### 配置说明 在 `src/main/resources/application.yaml` 中配置数据库和 Redis 连接信息: ```yaml spring: redis: host: localhost port: 6379 datasource: url: jdbc:mysql://localhost:3306/your_database username: your_username password: your_password ``` ### 初始化数据库 执行 `tb_user.sql` 创建用户表。 ### 运行项目 ```bash mvn spring-boot:run ``` ## API 接口 ### 用户操作 | 方法 | 路径 | 说明 | |------|------|------| | GET | `/api/user/{id}` | 根据ID获取用户 | | POST | `/api/user/hash/{id}` | 保存用户到Redis Hash | | GET | `/api/user/hash/{id}` | 从Redis Hash获取用户 | ### 列表操作 | 方法 | 路径 | 说明 | |------|------|------| | POST | `/api/list/init` | 初始化用户列表 | | GET | `/api/list` | 获取用户列表 | ### 标签操作(Set) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/api/tags/{id}` | 添加用户标签 | | GET | `/api/tags/{id}` | 获取用户标签 | ### 排行榜操作(ZSet) | 方法 | 路径 | 说明 | |------|------|------| | POST | `/api/rank/init` | 初始化排行榜 | | GET | `/api/rank/top3` | 获取前三名 | ## 核心功能 ### RedisService 常用方法 **String 类型:** - `setString` / `getString` - 字符串存取 - `incr` / `incrBy` / `decr` - 计数器操作 **Hash 类型:** - `setHash` / `getHash` - 哈希表操作 - `hashGetAllMap` - 获取所有键值对 **List 类型:** - `addLPushList` / `addRPushList` - 列表添加 - `getLRangeList` - 范围查询 **Set 类型:** - `addSet` - 添加元素 - `getSetValue` - 获取所有元素 - `isMemberSet` - 判断是否为成员 **ZSet 类型:** - `addOrUpdateZSet` - 添加或更新分数 - `getByPageZSet` - 分页查询 - `zSetIncrement` - 增加分数 ## 项目结构 ``` src/main/java/com/redis/type/use/ ├── RedisTypeUseApp.java # Spring Boot 启动类 ├── config/ # 配置类 │ ├── MybatisPlusConfig.java │ ├── RedisConfig.java │ └── serializer/ # JSON 序列化器 ├── controller/ # 控制器 │ └── TestController.java ├── entity/ # 实体类 │ └── User.java ├── mapper/ # 数据访问层 │ └── UserMapper.java ├── service/ # 业务逻辑 │ └── RedisTestService.java ├── redis/ # Redis 操作服务 │ └── RedisService.java ├── exception/ # 异常处理 │ └── ServiceException.java └── utils/ # 工具类 └── JsonUtils.java ``` ## License MIT License