Redis maven项目 jedis 客户端操作(一)

一、配置

        首先是在云服务器上部署Redis服务器,但是出于对安全性的考虑,我们不能够轻易的打开6379的默认端口。那我们要怎样从本机来访问到云端的服务器呢?注意到,我们可以利用ssh协议进行端口转发,和端口映射,通过设置一个本机的端口,来映射到云端服务器,然后进行操作。

        我这边以Xshell终端为例,首先cd /etc/redis,然后输入ll 查看文件夹,找到redis.conf,

输入vim redis.conf,进入配置文件内进行修改,将bind改为0.0.0.0,将保护模式改为no,编辑完后保存并退出。

接着我们来配置Xshell终端的ssh协议:

右键云服务器连接的属性,点击ssh下的隧道配置,然后将侦听端口改为本机的自定义闲置端口,目标端口改为Redis默认端口6379,点击确定,然后重新连接。

我们可以在本地控制台进行检验设置是否生效,win+r,输入cmd,然后输入netstat -ano | findstr 8888,进行检验是否设置OK。

二、导入依赖

我们首先去创建一个java的maven项目,然后去maven仓库的网站(点这->maven)搜索jedis。

复制红框部分,粘贴到项目的pom文件中,然后创建JedisPool池对象,输入url,就可以开始进行相关代码的编写了

三、jedis方法调用样例

代码如下:

(1)get,set,expire,ttl,type命令对应的方法调用:

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

import java.util.Set;

public class RedisDemoGeneric {
    public static void test1(Jedis jedis){
        System.out.println("get set");
        jedis.flushAll();
        jedis.set("key", "111");
        jedis.set("key2", "222");
        jedis.set("key3", "333");
        jedis.set("key4", "444");
        // boolean result = jedis.exists("key");
        // long result2 = jedis.del("key");
        // boolean result3 = jedis.exists("key");
        // System.out.println(result+" "+result2+" "+result3);
        // long result4 = jedis.del("key","key2","key3","key4");
        // boolean result2 = jedis.exists("key2");
        // System.out.println(result+" "+result2+" "+result4);
        Set<String> keys=jedis.keys("*");
        System.out.println(keys);

    }
    public static void test2(Jedis jedis)  {
        System.out.println("expire ttl");
        jedis.flushAll();
        jedis.set("key", "111");
        jedis.expire("key", 10);
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }
        long time = jedis.ttl("key");
        System.out.println(time);
    }

    public static void test3(Jedis jedis)  {
        System.out.println("type:");
        jedis.flushAll();
        jedis.set("key", "111");
        String type=jedis.type("key");
        System.out.println(type);
        jedis.lpush("key1", "111", "222", "333", "444");
        String type1=jedis.type("key1");
        System.out.println(type1);
        jedis.hset("key2", "f1", "111");
        String type2=jedis.type("key2");
        System.out.println(type2);
        jedis.sadd("key3","111","222","kzf");
        String type3=jedis.type("key3");
        System.out.println(type3);
        jedis.zadd("key4",10,"kzf");
        String type4=jedis.type("key4");
        System.out.println(type4);
    }
    public static void main(String[] args)  {
        JedisPool jedisPool = new JedisPool("tcp://127.0.0.1:8888");
        try (Jedis jedis = jedisPool.getResource()) {
            // String pong = jedis.ping();
            // System.out.println(pong);
            // test1(jedis);
            // test2(jedis);
            test3(jedis);
        }
    }
}

(2)String类型value的相关方法调用:

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

import java.util.List;


public class RedisDemoString {
    public static void test1(Jedis jedis) {
        System.out.println("mget 和 mset");
        jedis.flushAll();
        jedis.mset("key1", "111", "key2", "222","key3", "333");
        List<String> values = jedis.mget("key1", "key2","key3");
        System.out.println(values);
    }
    public static void test2(Jedis jedis) {
        System.out.println("getrange 和 setrange");
        jedis.flushAll();
        jedis.set("key","abcdefghijklmn");;
        String result = jedis.getrange("key",0,-1);
        System.out.println(result);

        jedis.setrange("key",3,"我的发");//redis中一个汉字三个字节
        result = jedis.getrange("key",0,-1);
        System.out.println(result);
    }
    public static void test3(Jedis jedis) {
        System.out.println("append:");
        jedis.flushAll();
        jedis.set("key","kzf");
        jedis.append("key"," love whx");
        String value= jedis.get("key");
        System.out.println(value);

    }
    public static void test4(Jedis jedis) {
        System.out.println("incr 和 decr");
        jedis.flushAll();
        jedis.set("key","222");
        System.out.println(jedis.get("key"));
        long result=jedis.incr("key");
        System.out.println(result);
        result = jedis.decr("key");
        System.out.println(result);
    }
    public static void main(String[] args) {
        JedisPool jedisPool = new JedisPool("127.0.0.1", 8888);
        try (Jedis jedis = jedisPool.getResource()) {
            test4(jedis);
        }
    }
}

四、PS

       剩余的redis的value的常见类型的jedis方法调用将在(二)篇中详细描述,感谢你读到这里,希望对你有所帮助!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值