zoukankan      html  css  js  c++  java
  • linux 下安装redis并用QT写客户端程序进行连接

     

    1.安装redis。使用如下命令:

    wget http://dowload.redis.io/redis-stable.tar.gz

    tar xzf redis-stable.tar.gz

    cd redis-stable

    make(可以用make test 进行检查是否编译正确)

    make intall

    2.启动redis,使用如下命令

    启动redis服务器

    redis-server

    启动redis客户端

    redis-cli

    默认情况下,server地址为127.0.0.1,port为6379

    在redis-cli命令行下可以键入ping命令来查看是否连接成功,成功的话会返回PONG

    在redis-cli下使用set命令来创建键值对,比如set key vlue命令,就是创建了关键字为key,值为value的命令、可以使用get命令来取值,比如set完上述关键字之后,利用get key

    命令,会打印value.

    3.使用QT做客户端连接

    首先需要安装客户端的lib,我安装的是hiredis,使用如下命令进行安装。

    git clone https://github.com/redis/hiredis 

    cd hiredis

    make  

    sudo make install(复制生成的库到/usr/local/lib目录下) 

    sudo ldconfig /usr/local/lib

    安装之后要在QT项目中配置lib.

    首先,新建QT Application项目

    在.pro中添加配置文件,如下操作

    LIBS+=-L/usr/local/lib -lhiredis

    这样编译的时候就不会出现找不到函数的问题了。

    我在UI中创建了一个button和一个textEdit,点击button就连接redis,来返回上面所set的key的value值。然后让这个value显示在textEdit中。

    代码如下:

    void MainWindow::on_pushButton_clicked()

    {

      struct timeval timeout={2,0};

      redisContext* pRedisContext=(redisContext*)redisConnectWithTimeout("127.0.0.1",6379,timeout);

    const char* command("get key");

    redisReply* reply=(redisReply*)redisCommand(pRedisContext,command);

      QString str=reply->str;

      ui->textEdit->append(str);

    }

    这样就可以在文本框中显示了“value”。

  • 相关阅读:
    蒙特卡洛采样、重要性采样
    伯努利分布和高斯分布下的最大似然估计、交叉熵
    对于分类问题的神经网络最后一层的函数:sigmoid、softmax与损失函数
    android 侧滑菜单
    安卓Animation类与xml制作动画
    LeetCode题解 #3 Longest Substring Without Repeating Characters
    GY89的使用
    使用GY89的BMP180模块获取温度和压强(海拔)
    STM32与PC机串口通讯
    STM32使用无源蜂鸣器演奏歌曲
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/9896695.html
Copyright © 2011-2022 走看看