資料儲存在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...