Redis Client (Jedis) for Java: 完整指南及示例

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

什么是 Jedis 以及为什么需要它?

\n\n

Jedis 是一个极简、轻量且非常流行的 Java 库,用于与 Redis(远程字典服务器)协同工作。Redis 是一个高性能的内存数据存储,通常用作数据库、缓存和消息代理。Jedis 提供了一个简单直观的 API,用于从 Java 应用程序与 Redis 服务器进行交互。

\n\n

为什么需要 Jedis?如果您的 Java 应用程序使用 Redis 进行缓存、会话管理、任务队列或临时数据存储,Jedis 是连接 Redis 最直接、最高效的方式。它支持所有主要的 Redis 数据结构(字符串、列表、集合、哈希、有序集合),以及 Pub/Sub、事务和 Lua 脚本等功能。

\n\n

Jedis 以其简单性和无多余依赖而闻名。与更重量级的客户端(例如 Lettuce)不同,Jedis 开箱即用无需配置连接池(尽管支持连接池),这使其成为注重开发简单性和速度的中小型项目的理想选择。

\n\n

安装 Jedis

\n\n

Jedis 通过 Maven Central 分发。要将该库添加到您的项目中,您需要在 pom.xml 文件(对于 Maven)或 build.gradle 文件(对于 Gradle)中添加依赖项。

\n\n

通过 Maven 安装

\n

将以下代码块添加到您的 pom.xml 中:

\n
<dependency>\n    <groupId>redis.clients</groupId>\n    <artifactId>jedis</artifactId>\n    <version>5.1.0</version> <!-- 使用最新的稳定版本 -->\n</dependency>
\n\n

通过 Gradle 安装

\n

将以下行添加到您的 build.gradle 中:

\n
implementation 'redis.clients:jedis:5.1.0'
\n\n

重要提示: 5.x 版本是 Jedis 的最新主要更新,包含对 Redis 7.x 的支持和新功能。建议始终使用最新的稳定版本,以获取所有修复和新功能。

\n\n

快速入门及代码示例

\n\n

让我们编写一个简单的程序,连接到 Redis,保存一个值并读取回来。

\n\n

假设 Redis 服务器在本地运行,使用默认端口 6379。

\n\n
import redis.clients.jedis.Jedis;\n\npublic class JedisQuickStart {\n    public static void main(String[] args) {\n        // 1. 创建与 Redis 的连接\n        // 默认为 localhost:6379\n        try (Jedis jedis = new Jedis("localhost", 6379)) {\n            \n            // 2. 测试连接 (PING)\n            String response = jedis.ping();\n            System.out.println("Ping response: " + response); // 应为 "PONG"\n\n            // 3. 保存值\n            jedis.set("user:1000:name", "Alice");\n            jedis.set("user:1000:age", "30");\n\n            // 4. 读取值\n            String name = jedis.get("user:1000:name");\n            String age = jedis.get("user:1000:age");\n\n            System.out.println("User name: " + name);\n            System.out.println("User age: " + age);\n\n            // 5. 检查键是否存在\n            boolean exists = jedis.exists("user:1000:name");\n            System.out.println("Key exists: " + exists);\n\n            // 6. 删除键\n            long deleted = jedis.del("user:1000:age");\n            System.out.println("Deleted keys: " + deleted);\n        }\n    }\n}
\n\n

此示例演示了基本操作:连接、写入、读取、检查存在性和删除。请注意使用了 try-with-resources —— 这确保了连接在使用后会被关闭。

\n\n

Jedis 的主要方法

\n\n

Jedis 提供了数百种方法,涵盖了 Redis 的所有功能。以下是 10 个最常用的方

推荐