Java如何使用jedis操作redis
本文主要讲解关于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相关的全部内容,希望对你有帮助。欢迎持续关注潘子夜个人博客,学习愉快哦!