Jedis使用
1. 引入jar包依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>4.2.1</version>
</dependency>
2.使用api操作redis
package cn.learn.redis;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPubSub;
import java.util.List;
import java.util.Set;
import java.util.concurrent.TimeUnit;
/*
* @author zd * @date 2025/6/9 * @apiNote*/
public class JedisDemo {
Jedis jedis;
@Before
public void before() {
jedis = new Jedis("127.0.0.1", 6379);
}
@After
public void after() {
jedis.close();
}
/**
* 测试是否连接
*/
@Test
public void test() {
String ping = jedis.ping();
System.out.println(ping);
}
/**
* string 类型测试
*/
@Test
public void testString() {
jedis.set("name", "zhangdong");
String name = jedis.get("name");
System.out.println(name);
System.out.println(jedis.ttl("name"));
}
/**
* list 类型测试
*/
@Test
public void testList() {
jedis.rpush("list", "1", "2", "3");
List<String> list = jedis.lrange("list", 0, -1);
System.out.println(list);
}
/**
* set 类型测试
*/
@Test
public void testSet() {
jedis.sadd("set", "1", "2", "3");
Set<String> set = jedis.smembers("set");
System.out.println(set);
}
/**
* hash 类型测试
*/
@Test
public void testHash() {
jedis.hset("hash", "name", "zhangdong");
String name = jedis.hget("hash", "name");
System.out.println(name);
}
/**
* zset 类型测试
*/
@Test
public void testZset() {
jedis.zadd("zset", 1, "1");
jedis.zadd("zset", 2, "2");
Set<String> zset = jedis.zrange("zset", 0, -1);
System.out.println(zset);
}
/**
* 订阅消息
*/
@Test
public void testSubscribe() throws InterruptedException{
// 创建订阅者
jedis.subscribe(new JedisPubSub() {
@Override
public void onMessage(String channel, String message) {
System.out.println(channel+":"+ message);
}
}, "channel1");
TimeUnit.HOURS.sleep(1);
}
/**
* 发布消息
*/
@Test
public void testPublish() {
jedis.publish("channel1", "hello world");
}
}
SpringBoot整合Redis