Java 使用 Redis(Jedis)
Java 使用 Redis(Jedis)
说明
Jedis 中的方法几乎完全沿用 Redis 原生命令,例如:清空当前库的方法为 jedis.flushDB(),与 Redis 指令 flushdb 一致。
步骤 1:添加依赖
implementation 'redis.clients:jedis:7.2.0'
步骤 2:Java 测试代码实现
package com;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class JedisTest {
private static JedisPool jedisPool;
@BeforeAll
public static void init() {
// 创建 jedis 连接池配置对象
var config = new JedisPoolConfig();
config.setMaxTotal(10); // 最大连接数
config.setMaxIdle(5); // 最大空闲连接数
config.setMinIdle(2); // 最小空闲连接数
config.setMaxWaitMillis(1000); // 最大等待时间(毫秒)
// 初始化 jedis 连接池(IP:192.168.10.158,端口:6379)
jedisPool = new JedisPool(config, "192.168.10.158", 6379);
}
/**
* 测试单连接模式下 1 秒内的存储量
*/
@Test
public void jedis() {
// 创建 jedis 对象,建立连接(IP:192.168.10.158,端口:6379)
var jedis = new Jedis("192.168.10.158", 6379);
// 如果 Redis 服务设置了密码,需添加以下代码(无密码则省略)
// jedis.auth("密码");
var begin = System.currentTimeMillis();
var count = 0;
// 测试 1 秒内的 key-value 存储量
while (System.currentTimeMillis() - begin < 1000) {
count++;
jedis.set("key" + count, "value" + count);
}
System.out.println("1s存储量:" + count);
// 关闭连接
jedis.close();
}
/**
* 测试连接池模式下的 Redis 操作
*/
@Test
public void jedisPool() {
// 从连接池中获取 jedis 对象
var jedis = jedisPool.getResource();
// 存储 key-value
jedis.set("***:com:username:10", "peppa");
// 获取并打印 value
System.out.println(jedis.get("***:com:username:10"));
// 关闭连接(释放资源,归还到连接池)
jedis.close();
}
/**
* 测试清空当前数据库
*/
@Test
public void delete() {
var jedis = jedisPool.getResource();
// 清空当前数据库(慎用)
jedis.flushDB();
}
}

浙公网安备 33010602011771号