目录前言一、下载二、使用1.前台模式运行2.后台模式运行前言redis-windows 是一个 由官方 Redis Windows 源代码编译而成的软件你可以使用 redis-windows 在 windows 系统快速安装 Redis 用于本地开发和学习。如果你想在 windows 电脑上练习 Redis 命令或者在你的本地开发环境代码里连接你本地的 Redis 服务进行开发那么 redis-windows 就很适合你。redis-windows gitHub项目地址redis-windows 下载一、下载在 redis-windows 下载 页面下载 Redis-8.8.0-Windows-x64-msys2-with-Service.zip它适合你Spring Boot RedisTemplate Jedis Lettuce 本地学习下载后进行解压例如解压到D:\Redis然后在D:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service下新建一个文件夹redis-data用于 redis 数据的持久化存储即当你关闭 redis-windows 后再次启动后 redis 也依然存在。二、使用有两种使用方式一种是 前台模式一种是 后台模式即安装为windows 服务。前台模式可以练习redis 命令直接在 cmd 命令进行设置 redis 值或者执行redis命令。后台模式可以 用于项目 调用 redis 开发、测试环境。1.前台模式运行以管理员身份打开一个 cmd 窗口然后执行下面的命令进入目录cdD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service然后执行下面的命令以前台模式启动程序RedisService.exe run--foreground--dirD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service\redis-data现在程序已经正常运行了再新打开一个 cmd 窗口你可以再新打开一个 cmd 窗口无需管理员身份在新的 cmd 窗口里执行下面的命令进入目录cdD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service然后你就可以在这个使用下面的命令练习 redis 命令例如往 redis 中 设置 key mykey valueaaa redis-cli SET mykey aaa获取 key mykey 的值 redis-cli GET mykey关闭程序redis-cli SHUTDOWN关闭程序后你可以关闭这两个 cmd 窗口当你下次再运行时你redis里的数据依然存在执行redis-cli GET mykey获取到的依然会是 aaa 并没有丢失因为 在运行程序时已经通过--dir D:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service\redis-data将运行中的数据持久化保存了。2.后台模式运行以管理员身份打开一个 cmd 窗口然后执行下面的命令进入目录cdD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service然后执行下面的命令以后台模式启动程序RedisService.exeinstall-cD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service\redis.conf--dirD:\Redis\Redis-8.8.0-Windows-x64-msys2-with-Service\redis-data--port6379现在程序已经正常运行了意味着你本地的 redis 服务已经启动本地项目调用现在你可以在你本地项目中调用你本地的 redis 服务了.例如:我使用 spring boot依赖dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId/dependency!-- 用于生成excel文件--dependencygroupIdorg.apache.poi/groupIdartifactIdpoi/artifactIdversion4.1.2/version/dependencyyaml 配置文件如下spring:redis:host:localhostport:6379timeout:10000msdatabase:0lettuce:pool:max-active:8max-wait:3000msmax-idle:8min-idle:0Java 代码AutowiredprivateRedisTemplateredisTemplate;publicvoidredisMapTest(){MapString,ObjectuserMapnewHashMap();userMap.put(name,Tom);userMap.put(age,18);redisTemplate.opsForHash().putAll(userMap,userMap);//redis 中获取 map 中指定的 key值Stringname(String)redisTemplate.opsForHash().get(userMap,name);System.out.println(name);//redis 中获取 map1 中所有的 keySetStringresultMapSetredisTemplate.opsForHash().keys(userMap);System.out.println(resultMapSet);//redis 中获取 map1 中所有的 valueListStringreslutMapListredisTemplate.opsForHash().values(userMap);System.out.println(reslutMapList);}输出Tom[name,age][Tom,18]