【Redis】三、Redis安装及简单示例

(四)Redis安装及使用

  Redis的安装比较简单,仍然和大多数的Apache开源软件一样,只需要下载,解压,配置环境变量即可。具体安装过程参考:菜鸟教程Redis安装

  安装完成后,通过redis-server启动Redis服务器,在通过Redis-cli启动一个客户端就可以进行简单的测试。

(五)Redis简单示例

  Redis作为一个key-Value的开源数据库,我们在简介中提到它提供了多种语言的API。这里我们通过java和python给出使用其API的简单示例。

1、Redis的Java API

  对于Java项目我们可以使用maven进行构建。

package com.redis.sgz;

import java.util.Iterator;
import java.util.Set;
import redis.clients.jedis.Jedis;

public class RedisTest{
    private String host;
    private int port;
    private String password;
    private Jedis jedis;

    //通过密码连接redis
    public RedisTest(String host,int port,String password){
        this.host=host;
        this.port=port;
        this.password=password;
    }

    //不使用密码连接
    public RedisTest(String host,int port){
        this.host=host;
        this.port=port;
        this.password=null;
    }

    //连接到redis服务器
    public void connect(){
        jedis=new Jedis(host, port);
        //是否进行密码认证
        if(password!=null)
            jedis.auth(password);
        System.out.println("connect success!");
        //查看服务是否运行
        System.out.println("服务正在运行:"+jedis.ping());
    }

    //关于redis键的相关操作
    public void keyOperate(){
        System.out.println("***********************key**********************");
        //输出当前系统中所有的键
        Set<String > keys=jedis.keys("*");
        Iterator<String > iterator=keys.iterator();
        while(iterator.hasNext())
            System.out.println(iterator.next());

        //添加一个key
        jedis.set("myredis","redis");

        //判断一个键在系统中是否存在
        System.out.println("删除前:键myredis存在吗?"+jedis.exists("myredis"));

        //查看key所对应值的类型
        System.out.println("键myredis存储的类型是:"+jedis.type("myredis"));

        //删除一个key
        jedis.del("myredis");
        System.out.println("删除后:键myredis存在吗?"+jedis.exists("myredis"));
    }

    //数据结构1:字符串
    public void stringOperate(){
        System.out.println("***********************string**********************");
        //增加键值对
        jedis.set("key1","value1");
        jedis.set("key2","value2");
        jedis.set("key1","value3");

        //获取某个key对应的值
        System.out.println("key1对应的值:"+jedis.get("key1"));

        //获取某个key对应的值的子字符
        System.out.println("key1对应的值子字符:"+jedis.getrange("key1",0,2));

        //获取某个key对应的值长度
        System.out.println("key1对应的值长度为:"+jedis.strlen("key1"));
    }

    //数据结构2:哈希Hash
    //数据机构3:列表List
    //数据结构4:集合Set
    //数据结构5:有序集合zSet
    //操作方法都类似,重点是掌握相应的命令

    public static void main(String[] args){
        RedisTest redis=new RedisTest("localhost",6379);
        //测试连接
        redis.connect();
        redis.keyOperate();
        redis.stringOperate();
    }
}

2、Redis的Python API

  pythonde 的API使用起来相对更加简单一些。

#coding=utf-8
import redis

def connect(host,port):
    r=redis.Redis(host=host,port=port)
    # 测试是否正在运行
    print("redis is run:"+str(r.ping()))
    return r

def stringOperate(r):
    r.set("name","zhangsan")
    r.set("age","10")
    print(r.get("name"))
    print(r.getrange("name",0,2))
    r.append("name","add")
    print(r.get("name"))
    r.incr("age")
    print(r.get("age"))

if __name__ == "__main__":
    r=connect("10.2.17.180",6379)
    stringOperate(r)
原文地址:https://www.cnblogs.com/gzshan/p/10973972.html