在开始学习本节内容之前, 首先需要您掌握 Java 编程语言,其次确定您已经安装了 Redis 服务及 Java Redis 驱动,并且能够成功运行 Java 程序。 本节介绍如何在 Java 中使用 Redis。
如果想在 Java 环境下操作 Redis ,您需要安装相应的 Redis 驱动程序,也就 jedis.jar 包(点击下载),然后将该驱动添加至 Java 的 classpath 中。
如果您的项目是基于 maven 构建的,那么您可以直接导入 maven 坐标,如下所示:
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
安装完 Redis 的驱动程序后,接下来就是连接 Redis 服务器。最简单的连接方式,就是通过 Jedis 对象连接。代码如下:
//引入Redis驱动程序
import redis.clients.jedis.Jedis;
public class RedisJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
// 如果设置 Redis 服务的密码,需要进行验证,若没有则可以省去
// jedis.auth("123456");
System.out.println("连接成功");
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());
}
}
首先确保 Redis 驱动包引入路径正确的,然后编译并运行 Java 程序,输出结果如下:
连接成功 服务正在运行: PONG
Redis String 类型操作,示例如下:
import redis.clients.jedis.Jedis;
public class RedisStringJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("服务器连接成功");
//设置 redis 字符串数据
jedis.set("webkey", "www.cdsy.xyz");
// 获取存储的数据并输出
System.out.println("redis 存储的字符串为: "+ jedis.get("webkey"));
}
}
编译并运行上述程序,输出结果如下:
服务器连接成功 redis 存储的字符串为: www.cdsy.xyz
Redis List 列表操作,示例如下:
import java.util.List;
import redis.clients.jedis.Jedis;
public class RedisListJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("服务器连接成功");
//存储数据到列表中
jedis.lpush("website_list", "www.cdsy.xyz");
jedis.lpush("website_list", "www.baidu.com");
jedis.lpush("website_list", "www.cdsy.xyz");
// 获取存储的数据并输出
List<String> list = jedis.lrange("website_list", 0 ,2);
for(int i=0; i<list.size(); i++) {
System.out.println("列表元素为: "+list.get(i));
}
}
}
编译并运行上述程序,输出结果如下:
服务器连接成功 列表元素为: www.cdsy.xyz 列表元素为: www.baidu.com 列表元素为: www.cdsy.xyz
查看所有 key,示例如下:
import java.util.Iterator;
import java.util.Set;
import redis.clients.jedis.Jedis;
public class RedisKeyJava {
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("服务器连接成功");
// 获取数据并输出
Set<String> keys = jedis.keys("*");
Iterator<String> it=keys.iterator() ;
while(it.hasNext()){
String key = it.next();
System.out.println(key);
}
}
}
编译并运行上述程序。输出结果如下:
服务器连接成功 webkey website_list