c 訪問 redis 儲存型別

2021-06-21 16:37:24 字數 1953 閱讀 2269

資料儲存在redis上有多種方式:

1.key形式

2.hash形式

3.list形式

4 string形式

5 set 形式

6 sortedset(有序集合)

根據提供的介面,用class包裝所以儲存型別的介面

//oper_redis.h

#ifndef __oper_redis_h

#define __oper_redis_h

#include

class operredis

public:

operredis();

int redis_conn(char *host,int port);

int redis_comm_get(char *cmd,char value);

void redis_comm_set(char *cmd);

void redis_free();

void redis_close();

};#endif

//oper_redis.cpp

#include

#include

#include

operredis::operredis()

conn=null;

reply=null;

int operredis::redis_conn(char *host,int port)

conn=redisconnect(host,port);

if(conn->err)

printf("connection err:%s",conn->errstr);

return 0;

return 1;

int operredis::redis_comm_get(char *cmd,char *value)

reply=(redisreply*)rediscommand(conn,cmd);

if(1==reply->type)

strncpy(value,reply->str,reply->len);

return reply->type;

void operredis::redis_comm_set(char *cmd)

reply=(redisreply *)rediscommand(conn,comm);

void operredi::redis_free()

freereplyobject(reply);

void operredis::redis_close()

redisfree(conn);

//test_main.cpp

int main()

operredis oprd;

int ret=oprd.redis_conn("10.1.1.2",6379);

if(0==ret)

printf("connect error!\n");

retrn 0;

printf("connect success!\n");

char  setcmd="set   test    123";

oprd.redis_comm_set(setcmd);

oprd.redis_free();

char getcmd="get test";

char value[64]=;

ret=oprd.redi_comm_get(getcmd);

if(1==ret)

printf("get value success");

else

printf("no this key");

oprd.redis_free();

oper.redis_close();

return 0;

setkey:可以是:hset website google www.g.cn

通過組合setkey和getkey儲存各類方式的資料

Redis資料儲存型別(一)

redis 支援儲存的value型別相對更多,包括string list set zset和hash。這些資料型別都支援push pop add remove及取交集並集和差集及更豐富的操作。筆者總結了這五種資料儲存型別及常用命令。string 是redis最簡單的資料儲存型別,以key value...

redis儲存的常見型別

最近一直搞redis,redis支援的型別想必大家都清楚,我試著儲存最簡單的字串,嘗試著訪問list和list 一下就是幾種儲存方式,其實都是簡單的get,set,但是轉化就需要自己去寫一些序列化方法了。訪問string 訪問list 訪問list 格式 和list類似,只是序列化的方法為如下 pu...

redis 資料型別儲存

redis的字串是位元組序列。在redis中字串是二進位制安全的,這意味著他們有乙個已知的長度,是沒有任何特殊字元終止決定的,所以可以儲存任何東西,最大長度可達512兆。redis 127.0.0.1 6379 set name yiibai okredis 127.0.0.1 6379 get n...