文
章
目
录
章
目
录
本文主要讲解关于Java如何使用jedis操作redis相关内容,让我们来一起学习下吧!
在日常应用开发中,我们经常会在应用中用到缓存,其中 redis 作为缓存数据库也是用的最多的一种。今天的主要内容是学习下在 Java 中使用 redis。
在 Java 中,Jedis 是用的比较广的一种三方库,通过 maven 添加 Jedis 依赖,我们就可以在项目中使用 redis 了。
下面的case将以如下顺序呈现:
- maven 依赖
- redis的应用类和main
测试环境:
- Java: 21
- redis: 5.0
- jedis: 5.0.2
1.添加依赖
首先新建一个 maven项目,然后在 pom.xml 中添加 jedis 的依赖:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>5.0.2</version>
</dependency>
2.redis应用类
下面的 demo 中测试了四种基本数据类型,分别是字符串、列表、集合、哈希四种,测试结果也一并给出。
package org.example;
import redis.clients.jedis.Jedis;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 单个redis连接client
*/
public class RedisDemo {
private final static String host = "localhost"; // 自己的redis ip
private final static int port = 6379;
private final static int dbNumber = 5; // 自己选择db
private static Jedis getInstance() {
Jedis jedis = new Jedis(host, port);
jedis.select(dbNumber);
return jedis;
}
public static void main(String[] args) {
Jedis jedis = RedisDemo.getInstance();
// type: string
String keyString = "keyString";
jedis.set(keyString, "val");
String val = jedis.get("key");
System.out.printf("type: String, key: %s, value: %sn", keyString, val);
jedis.del(keyString);
// type: list
String keyList = "keyList";
jedis.lpush(keyList, "1", "2", "3");
List<String> allElements = jedis.lrange(keyList, 0, -1);
System.out.printf("type: List, key: %s, value: %sn", keyList, allElements.toString());
jedis.del(keyList);
// type: set
String keySet = "keySet";
jedis.sadd(keySet, "a", "b", "c");
String randomSetVal = jedis.srandmember(keySet);
System.out.printf("type: Set, key: %s, randomValue: %sn", keySet, randomSetVal);
jedis.del(keySet);
// type: hash
String keyHash = "keyHash";
Map<String, String> hashmap = new HashMap<>();
hashmap.put("1", "one");
hashmap.put("2", "two");
jedis.hset(keyHash, hashmap);
System.out.printf("type: Hash, key: %s, value: %sn", keyHash, jedis.hgetAll(keyHash).toString());
jedis.del(keyHash);
}
}
测试结果:
type: String, key: keyString, value: val
type: List, key: keyList, value: [3, 2, 1]
type: Set, key: keySet, randomValue: c
type: Hash, key: keyHash, value: {2=two, 1=one}
如果我们只是在项目中少量用到 redis,不妨参照上方 case 应用到自己的项目中,如果有更为频繁或者更复杂的应用,建议使用 连接池,以防止频繁新建连接和销毁连接带来资源消耗。
以上就是关于Java如何使用jedis操作redis相关的全部内容,希望对你有帮助。欢迎持续关注潘子夜个人博客,学习愉快哦!