Redis:GUI 客户端(Redis Insight / Tiny RDM)、基础操作、Spring Boot 连接实现

一、下载Redis客户端工具

(一) Redis Insight

1. 下载 Redis Insight

Downloads | Redis


2. 创建一个能被 Redis Insight 成功连接的 Redis 实例

(1)创建配置目录
复制代码
mkdir -p /home/xiaoman/software/redis/7009
cd /home/xiaoman/software/redis/7009
(2)创建 redis-7009.conf
复制代码
nano redis-7009.conf

port 7009
bind 0.0.0.0
protected-mode no
daemonize yes
dir ./
logfile "redis-7009.log"
appendonly no

bind 0.0.0.0 → 允许本机 + 局域网访问

protected-mode no → 允许远程连接

daemonize yes → 后台运行

appendonly no → 简化测试

(3)启动 Redis
复制代码
redis-server redis-7009.conf

确认是否成功:

复制代码
ps -ef | grep 7009
(4)测试本地连接
复制代码
redis-cli -p 7009 ping

PONG 说明实例正常运行。

(5) 放行端口

如果Linux 是 Ubuntu → 用 UFW:

复制代码
sudo ufw allow 7009
sudo ufw reload

如果使用 firewalld(CentOS):

复制代码
sudo firewall-cmd --add-port=7009/tcp --permanent
sudo firewall-cmd --reload
(6)用 Redis Insight 连接

此时就连接完成。


3. Redis Insight 图形界面基础操作(GUI)

(1)设置Key(String类型)

(2)创建List(列表)

显示


(3) 创建Hash(哈希对象)

显示


(4) 删除Key

4. Redis Insight 内置命令行(CLI)操作

(1)String 类型


(2)List 类型

(3)Hash 类型

(4)Set类型

(5) 删除 Key

(6)设置过期时间

(二)Tiny RDM

1. 下载Tiny RDM

Tiny RDM | Redis桌面管理客户端

建立连接

二、SpringBoot 连接Redis

(一)创建 SpringBoot 项目

(二)添加 Maven 依赖

pom.xml

复制代码
<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <!-- Spring Web -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- Spring Data Redis -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

        <!-- Lombok -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

(三)配置 Redis 连接

1. 在 src/main/resources/application.properties 中添加

java 复制代码
spring.data.redis.host=127.0.0.1
spring.data.redis.port=6379
#spring.data.redis.username=default         # Redis 6+ 需要用户名,默认 default
#spring.data.redis.password=               # 如果没有密码可以留空
spring.data.redis.timeout=5000ms
spring.data.redis.database=0

注意:

timeout 现在必须带单位,比如 5000ms

Redis 6+ 可以有用户名 spring.data.redis.username,旧版本不用也行

端口、host、database 都在 spring.data.redis 前缀下

2. 检查Redis是否有密码

方法1:使用 redis-cli

复制代码
redis-cli

进入后,执行命令:

复制代码
CONFIG GET requirepass

如果值是空的 "",说明 Redis 没有密码

如果有值,说明 Redis 设置了密码

或者直接尝试连接:

复制代码
redis-cli -h 127.0.0.1 -p 6379

如果 Redis 提示 NOAUTH Authentication required,说明开启了密码,需要用:

复制代码
redis-cli -h 127.0.0.1 -p 6379 -a yourpassword

方法 2:查看 redis.conf 配置文件

在 redis.conf 中找到:

复制代码
# requirepass foobared

去掉 # 并设置密码,就启用密码

留空或注释掉就是无密码


(四)配置 RedisTemplate(可选自定义)

RedisConfig.java:

java 复制代码
@Configuration
public class RedisConfig {

    @Bean
    public RedisTemplate<String, Object> redisTemplate(LettuceConnectionFactory connectionFactory) {
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        template.setConnectionFactory(connectionFactory);

        // 使用 String 序列化 key
        template.setKeySerializer(new StringRedisSerializer());
        template.setHashKeySerializer(new StringRedisSerializer());
        template.setValueSerializer(new StringRedisSerializer());
        template.setHashValueSerializer(new StringRedisSerializer());

        template.afterPropertiesSet();
        return template;
    }
}

这里使用 String 序列化,方便在 Redis 中查看数据。


(五)编写 Redis 服务

RedisService.java:

java 复制代码
@Service
public class RedisService {

    @Autowired
    private RedisTemplate<String, Object> redisTemplate;

    public void set(String key, String value, long timeoutSeconds) {
        redisTemplate.opsForValue().set(key, value, timeoutSeconds, TimeUnit.SECONDS);
    }

    public String get(String key) {
        Object value = redisTemplate.opsForValue().get(key);
        return value != null ? value.toString() : null;
    }

    public void delete(String key) {
        redisTemplate.delete(key);
    }
}

(六)编写 Controller

RedisController.java:

java 复制代码
@RestController
@RequestMapping("/redis")
public class RedisController {

    @Autowired
    private RedisService redisService;

    @PostMapping("/set")
    public String set(@RequestParam String key, @RequestParam String value) {
        redisService.set(key, value, 60); // 过期 60 秒
        return "ok";
    }

    @GetMapping("/get")
    public String get(@RequestParam String key) {
        return redisService.get(key);
    }

    @DeleteMapping("/delete")
    public String delete(@RequestParam String key) {
        redisService.delete(key);
        return "deleted";
    }
}

(七)启动类

RedisDemoApplication.java:


(八)测试

  1. 启动 Redis 服务

127.0.0.1:6379>说明已经成功启动

  1. 启动 Spring Boot 项目

  2. 使用 Postman 或浏览器访问接口

java 复制代码
POST  http://localhost:8080/redis/set?key=name&value=Aria
GET   http://localhost:8080/redis/get?key=name
DELETE http://localhost:8080/redis/delete?key=name
相关推荐
狼爷6 分钟前
Go 没有 override?别硬套继承!用接口+嵌入,写更清爽的“覆盖”逻辑
java·go
小兔崽子去哪了3 小时前
Java 自动化部署
java·后端
ma_king3 小时前
入门 java 和 数据库
java·数据库·后端
后端AI实验室3 小时前
我用Cursor开发了3个月,整理出这套提效4倍的工作流
java·ai
码路飞7 小时前
GPT-5.3 Instant 终于学会好好说话了,顺手对比了下同天发布的 Gemini 3.1 Flash-Lite
java·javascript
SimonKing7 小时前
OpenCode AI编程助手如何添加Skills,优化项目!
java·后端·程序员
Seven979 小时前
剑指offer-80、⼆叉树中和为某⼀值的路径(二)
java
怒放吧德德20 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆1 天前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌1 天前
基于注解+拦截器的API动态路由实现方案
java·后端