前言
本章大致说明一下Jedis的使用,较为简略。
Redis
Jedis是指redis的Java客户端。说白了,可以理解为Java操作redis。既然是操作redis,那么redis中的命令就应该可以使用。在jedis中是以方法的形式进行调用。
环境
一、安装redis
redis安装
这是我写的redis的安装,可以参考。
二、修改配置
打开redis.conf,修改如下配置
1. daemonize yes # 设为后台应用,保护线程
2. 注释 bind 127.0.0.1 # 远程访问
3. protected-mode no # 保护模式,关闭可以远程连接,打开则需要配置 bind ip或者设置访问密码
4. 开放防火墙端口6379 # redis默认端口 6379
5. 云服务器开放安全组里的端口 6379
三、启动redis
四、创建一个java项目
创建一个java项目,并导入jedis的依赖。
五、编码
public class TestJedis {
public static void main(String[] args) {
Jedis jedis = new Jedis("139.186.169.77",6379);
System.out.println(jedis.ping());
}
}
六、启动测试
F:\Java\jdk1.8.0_181\bin\java.exe ...
PONG
Process finished with exit code 0
打印了pong,表示连接成功!
操作
redis的命令在jedis中就是各种方法。如果不记得redis命令的可以参考redis命令
因为命令当时已经比较详细的记载了。这里就不再那么详细的赘述。只写几个常用的方法做演示。
public static void main(String[] args) {
Jedis jedis = new Jedis("139.186.169.77",6379);
jedis.flushDB(); //清空当前数据库数据
jedis.flushAll(); //清空所有数据库数据
// String
System.out.println("设置名字是否成功:"+jedis.set("name", "zs"));
System.out.println("获取名字:"+jedis.get("name"));
System.out.println("新增后的字符串长度:"+jedis.append("name", "123"));
System.out.println("截取后的字符串"+jedis.getrange("name", 1, -1));
// List
jedis.lpush("city", "beijing");
jedis.rpush("city", "shanghai");
System.out.println("list列表:"+jedis.lrange("city", 0, -1));
System.out.println("list长度"+jedis.llen("city"));
System.out.println("取出的是:"+jedis.lpop("city"));
// Set
jedis.sadd("age","18","20","5");
jedis.sadd("age","33","21","90","54");
System.out.println("set长度为:"+jedis.scard("age"));
System.out.println("删除的是:"+jedis.srem("age", "20"));
jedis.smove("age","age2","5");//将age中的5移动到age2中
System.out.println("集合的成员有:"+jedis.smembers("age"));
System.out.println("集合的成员有:"+jedis.smembers("age2"));
// Zset
jedis.zadd("stu",1,"zs");
System.out.println("zset的长度:"+jedis.zcard("stu"));
System.out.println("zset的遍历:"+jedis.zrange("stu", 0, -1));
// Hash
jedis.hset("score","yuwen","88");
System.out.println("是否有yuwen:"+jedis.hexists("score", "yuwen"));
System.out.println("yuwen的值为:"+jedis.hget("score", "yuwen"));
System.out.println("hash删除的是:"+jedis.hdel("score", "yuwen"));
//geo
jedis.geoadd("citys",111.9,30.71,"未知地");
jedis.close(); //关闭redis
}
设置名字是否成功:OK
获取名字:zs
新增后的字符串长度:5
截取后的字符串s123
list列表:[beijing, shanghai]
list长度2
取出的是:beijing
set长度为:7
删除的是:1
集合的成员有:[18, 21, 33, 54, 90]
集合的成员有:[5]
zset的长度:1
zset的遍历:[zs]
是否有yuwen:true
yuwen的值为:88
hash删除的是:1