redis java如何连接
使用 Jedis 连接 Redis
Jedis 是 Redis 官方推荐的 Java 客户端,提供简单易用的 API 与 Redis 交互。
引入 Jedis 依赖(Maven):
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>4.3.1</version>
</dependency>
基础连接示例:
import redis.clients.jedis.Jedis;
public class RedisExample {
public static void main(String[] args) {
// 创建连接,默认连接本地6379端口
Jedis jedis = new Jedis("localhost");
// 设置键值
jedis.set("key", "value");
// 获取值
String value = jedis.get("key");
System.out.println(value);
// 关闭连接
jedis.close();
}
}
使用连接池优化性能
对于生产环境,建议使用 JedisPool 管理连接:
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class RedisPoolExample {
public static void main(String[] args) {
// 配置连接池
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxTotal(10); // 最大连接数
// 创建连接池
JedisPool jedisPool = new JedisPool(poolConfig, "localhost");
try (Jedis jedis = jedisPool.getResource()) {
jedis.set("poolKey", "poolValue");
System.out.println(jedis.get("poolKey"));
}
// 关闭连接池
jedisPool.close();
}
}
使用 Lettuce 连接 Redis
Lettuce 是另一个高性能 Redis 客户端,支持异步和响应式编程。
引入 Lettuce 依赖:
<dependency>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
<version>6.2.3.RELEASE</version>
</dependency>
基础连接示例:

import io.lettuce.core.RedisClient;
import io.lettuce.core.api.StatefulRedisConnection;
import io.lettuce.core.api.sync.RedisCommands;
public class LettuceExample {
public static void main(String[] args) {
RedisClient client = RedisClient.create("redis://localhost");
StatefulRedisConnection<String, String> connection = client.connect();
RedisCommands<String, String> commands = connection.sync();
commands.set("lettuceKey", "lettuceValue");
System.out.println(commands.get("lettuceKey"));
connection.close();
client.shutdown();
}
}
连接 Redis 集群
对于 Redis 集群模式,Jedis 和 Lettuce 都提供支持:
Jedis 集群连接:
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
public class ClusterExample {
public static void main(String[] args) {
Set<HostAndPort> nodes = new HashSet<>();
nodes.add(new HostAndPort("127.0.0.1", 7000));
nodes.add(new HostAndPort("127.0.0.1", 7001));
JedisCluster cluster = new JedisCluster(nodes);
cluster.set("clusterKey", "clusterValue");
System.out.println(cluster.get("clusterKey"));
cluster.close();
}
}
连接认证配置
如果 Redis 需要密码认证:
Jedis 认证方式:

Jedis jedis = new Jedis("localhost");
jedis.auth("yourpassword");
Lettuce 认证方式:
RedisClient client = RedisClient.create("redis://password@localhost:6379");
SSL/TLS 连接配置
对于安全连接:
Jedis SSL 示例:
JedisShardInfo shardInfo = new JedisShardInfo("localhost", 6379);
shardInfo.setSsl(true);
Jedis jedis = new Jedis(shardInfo);
Lettuce SSL 示例:
RedisClient client = RedisClient.create(
RedisURI.Builder.redis("localhost")
.withSsl(true)
.build()
);






