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
相关推荐
码云社区4 分钟前
JAVA同城上门做饭系统家政上门同城服务系统源码小程序+APP+公众号+h5
java·开发语言·小程序
南村群童欺我老无力.5 分钟前
鸿蒙PC开发中Hvigor构建系统的缓存与增量编译问题
缓存·华为·harmonyos
Gofarlic_oms111 分钟前
Adams许可排队严重?不想买新许可,闲置回收立即可用
java·大数据·服务器·开发语言·人工智能
mask哥13 分钟前
15种算法模式java实现详解
java·算法·力扣
大迪deblog19 分钟前
系统架构设计-Redis设计-缓存穿透、缓存击穿、缓存雪崩
数据库·redis·系统架构
skilllite作者22 分钟前
GEO 是什么:从搜索引擎到「对话式答案」的信息可见性
java·前端·笔记·安全·搜索引擎·agentskills
是宇写的啊24 分钟前
SpringBoot 统一功能处理
java·spring boot·后端
等....26 分钟前
Spring Boot多模块项目部署
java·spring boot·后端
斌果^O^41 分钟前
SpringBoot 实战:@Async + CompletableFuture 实现多 SQL 并行统计查询
java·spring boot·sql
weixin_4567231642 分钟前
Java项目的rabbitmq配置vhost
java·rabbitmq·java-rabbitmq