Redis和Jedis的区别

目录

含义与用途

Jedis案例

总结


含义与用途

Redis:

  • **概念:**Redis是一个基于内存的键值存储数据库,支持丰富的数据结构。比如:字符串

  • 功能: 除了基础的数据存储,Redis还提供了丰富的高级功能。如持久化(RDB、AOF)、发布/订阅、Lua脚

    本、事务、主从同步数据等

  • **用途:**Redis广泛用于缓存、消息队列、会话信息存储等

Jedis:

  • **概念:**Jedis是Redis的一个Java客户端,用于在Java程序中与Redis服务进行交互

  • **功能:**Jedis提供了与Redis通信相关的API,支持几乎所有的命令。它能够处理基本的数据操作以及复杂的场景功能,如事务、订阅/发布、Lua脚本等

  • **用途:**Jedis 用于在 Java 应用中连接和操作 Redis,帮助开发者在 Java 环境下轻松集成 Redis 功能

  • 本质区别:

    • Redis 是一个数据库系统(服务端)
    • Jedis 是 Redis 的 Java 客户端(库或工具)
  • 使用方式:

    • Redis 是需要安装和运行的服务器,用于数据存储和管理
    • Jedis 是 Java 应用中的一个库,开发者通过它来与 Redis 服务器进行通信

Jedis案例

引入Maven依赖

XML 复制代码
        <dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>3.6.3</version>
		</dependency>

测试类

XML 复制代码
    public static void main(String[] args) {
        // 创建一个Jedis实例,这里假设Redis服务器运行在本地默认端口6379上
        try (Jedis jedis = new Jedis("localhost", 6379)) {
            System.out.println("连接成功");

            // 检查是否能够成功ping通Redis服务器
            String pingResult = jedis.ping();
            System.out.println("Ping Redis: " + pingResult);

            // 设置一个键值对
            jedis.set("key", "value");
            System.out.println("存储数据完成");

            // 获取刚刚设置的键值对
            String value = jedis.get("key");
            System.out.println("从Redis获取的数据: " + value);

            // 删除键值对
            /*Long result = jedis.del("key");
            System.out.println(result > 0 ? "键已删除" : "键不存在或未删除");*/
        } catch (JedisConnectionException e) {
            System.err.println("无法连接到Redis服务器: " + e.getMessage());
        } catch (Exception e) {
            System.err.println("发生错误: " + e.getMessage());
        }
    }

运行截图

总结

总的来说,Redis 是一个服务,而 Jedis 是一个帮助 Java 开发者使用 Redis 的工具

在CSDN上,一键三连是对作者辛勤创作的最好鼓励!喜欢我的文章,就请点赞、收藏、转发吧!你们的支持是我持续分享知识的动力,感谢大家的陪伴与认可!💖🔝🔄

相关推荐
马克学长18 分钟前
SSM学生出国境学习交流管理87153(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·学习·ssm 框架·学生出国境管理·在线申请
么么...22 分钟前
MySQL 存储引擎与索引深度解析:从原理到优化实践
数据库·经验分享·sql·mysql
さかた ぎんとき8837 分钟前
从SQL到磁盘的Mysql全链路解析
数据库·sql·mysql
それども43 分钟前
数据库读写分离和事务的关系
数据库
TGITCIC1 小时前
2026数据分析Agent最新落地方向解析
数据库·数据分析·ai大模型·ai智能体·ai数据·ai问数·ai sql
wangqiaowq1 小时前
SQL Server 对非聚簇索引的 INCLUDE 列数量和大小有限制
数据库
Coder_Boy_1 小时前
基于SpringAI的在线考试系统-核心业务流程图
java·数据库·spring boot·软件工程
松涛和鸣2 小时前
DAY49 DS18B20 Single-Wire Digital Temperature Acquisition
linux·服务器·网络·数据库·html
海边的Kurisu2 小时前
苍穹外卖日记 | Day3 公共字段填充、菜品模块
数据库
摆烂z2 小时前
mysql通过binlog恢复数据
数据库·mysql