Redisc/c++,java客户端连接
Redis 介绍 redis 这个想必大家都了解,关于redis的安装参考这里,redis使用文档参见这里。 Redis C客户端的使用方法 Redis的c客户端 Hiredis使用比较广泛,下面主要介绍下它。 1,Hiredis的安装,配置 Hiredis客户端 在redis解压后的deps/hiredis下有相应的
Redis 介绍
redis 这个想必大家都了解,关于redis的安装参考这里,redis使用文档参见这里。
Redis C客户端的使用方法
Redis的c客户端 Hiredis使用比较广泛,下面主要介绍下它。
1,Hiredis的安装,配置
Hiredis客户端 在redis解压后的deps/hiredis下有相应的文件。如果你的安装包没有相应的文件可以到这里下载。
cd deps/hiredis (下载hiredis的话 自行解压进入 解压后的目录)。
make
最后 把相应的文件加入到 系统目录下,这样系统能够搜索到。
mkdir /usr/lib/hiredis
cp libhiredis.so /usr/lib/hiredis #将动态连接库libhiredis.so至/usr/lib/hiredis
mkdir /usr/include/hiredis
cp hiredis.h /usr/include/hiredis
最后注意:
需要更新一下库的cache,执行命令:sudo ldconfig /usr/lib/
因为程序启动时,会去/etc/ld.so.cache来查找所要用的库,不然会出现如下错误:error while loading shared libraries: libhiredis.so.0.10: cannot open shared object file: No such file or directory。 关于这些知识参考这里。
2,C客户端访问Redis
上面的工作完成后,就可以进行连接hiredis服务器。代码如下(编译环境为ubuntu系统上gcc)
// redis_test.c #include <stdio.h> #include <string.h> #include <hiredis.h> int main() { redisContext *c = redisConnect("127.0.0.1", 6379);// ip port if(c->err) { printf("connect error.%s", c->errstr); } else { printf("connected\n"); } char *value="It's a test"; redisReply *reply1 = redisCommand(c, "set key %s", value); freeReplyObject(reply1); redisReply *reply2 = redisCommand(c, "get key"); printf("key:1 value:%s\n", reply2->str); freeReplyObject(reply2); redisFree(c); return 0; }
在linux系统下 .o 就相当于windows里的obj文件 .a 是好多个.o合在一起,用于静态连接 .so 是shared object,用于动态连接的,和dll差不多 。
因此说明两中编译方法:
一,采用静态链接方法
把 hiredis编译后的 libredis.a 拷贝到当前程序 目录下,执行如下命令:
gcc -o test redis_test.c libredis.a
运行程序: ./test , 可以看到成功了。
二,动态链接
执行如下命令:gcc -o test redis_test.c libredis.so (注意 使用共享库前要sudo ldconfig /usr/lib/)
运行程序: ./test , 可以看到成功了。
Redis Java客户端的使用方法
1,Jedis下载
Jedis 是Redis 的Java客户端,Redis中Java客户端使用的相对比较广泛,下面就介绍Java怎么链接和实验Redis.
Jedis下载地址在 这里 通过网址 https://github.com/xetorthio/jedis 下载jedis源码。
2,编译Jedis jar 包
通过步骤1 下载下来的源码发现没有 jar包,对于编程直接使用源码比较麻烦,现在把源码打包为jar文件下次用的时候可以直接使用了。
用eclipse新建一个Jedis工程把 解压后的 redis文件放在新建工程的src目录下,发现缺失相应的Commons Pool 2.2 包,需要到这里
下载可执行文件包commons-pool2-2.2-bin.zip,解压并把commons-pool2-2.2.jar等依赖包 通过 build path 中的Add External Jars 加入
到当前的工程中,最后export jar包,命名为: jedis-2.4.2.jar,可以到这里下载 http://download.csdn.net/detail/gfsfg8545/7357837 。
3,使用Jedis访问 Redis
新建工程, 在引入相关jar包后,只要new一个Jedis对象,就能做redis相关操作了。来个简单的jedis实例:
package cn.daniel.test; /** * * @author Daniel * redis java client test. * time 2014-05-16 */ import java.util.List; import java.util.Map; import java.util.Map.Entry; import redis.clients.jedis.Jedis; public class JredisTest { public void redisTest() { Jedis redis = new Jedis("172.16.0.126", 6379);// connect server: ip port // redis.auth("user"); // string operator // set key-value redis.set("key1", "1"); redis.set("key2", "2"); // mset key-value redis.mset("key3", "3", "key4", "4"); // get key-value System.out.println("key:key1 value:"+redis.get("key1")); // MGET key [key ...] List<String> list = redis.mget("key1", "key2", "key3", "key4"); for(String s:list) { System.out.println(s); } // hset key field value redis.hset("website", "CSDN", "http://csdn.net/"); redis.hset("website", "Daniel", "http://blog.csdn.net/daniel_ustc"); // hgetAll, Get all the fields and values in the hash Map<String, String> map = redis.hgetAll("website"); for(Entry<String, String> entry:map.entrySet()) { System.out.println("key: " + entry.getKey()+ " value: " + entry.getValue()); } // quit redis.quit(); }// redisTest public static void main(String[] args) { JredisTest test = new JredisTest(); test.redisTest(); } }

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Java 8 introduces the Stream API, providing a powerful and expressive way to process data collections. However, a common question when using Stream is: How to break or return from a forEach operation? Traditional loops allow for early interruption or return, but Stream's forEach method does not directly support this method. This article will explain the reasons and explore alternative methods for implementing premature termination in Stream processing systems. Further reading: Java Stream API improvements Understand Stream forEach The forEach method is a terminal operation that performs one operation on each element in the Stream. Its design intention is

Java Made Simple: A Beginner's Guide to Programming Power Introduction Java is a powerful programming language used in everything from mobile applications to enterprise-level systems. For beginners, Java's syntax is simple and easy to understand, making it an ideal choice for learning programming. Basic Syntax Java uses a class-based object-oriented programming paradigm. Classes are templates that organize related data and behavior together. Here is a simple Java class example: publicclassPerson{privateStringname;privateintage;

Java is a popular programming language that can be learned by both beginners and experienced developers. This tutorial starts with basic concepts and progresses through advanced topics. After installing the Java Development Kit, you can practice programming by creating a simple "Hello, World!" program. After you understand the code, use the command prompt to compile and run the program, and "Hello, World!" will be output on the console. Learning Java starts your programming journey, and as your mastery deepens, you can create more complex applications.

Capsules are three-dimensional geometric figures, composed of a cylinder and a hemisphere at both ends. The volume of the capsule can be calculated by adding the volume of the cylinder and the volume of the hemisphere at both ends. This tutorial will discuss how to calculate the volume of a given capsule in Java using different methods. Capsule volume formula The formula for capsule volume is as follows: Capsule volume = Cylindrical volume Volume Two hemisphere volume in, r: The radius of the hemisphere. h: The height of the cylinder (excluding the hemisphere). Example 1 enter Radius = 5 units Height = 10 units Output Volume = 1570.8 cubic units explain Calculate volume using formula: Volume = π × r2 × h (4

Spring Boot simplifies the creation of robust, scalable, and production-ready Java applications, revolutionizing Java development. Its "convention over configuration" approach, inherent to the Spring ecosystem, minimizes manual setup, allo

Nexo Exchange: Swiss cryptocurrency lending platform In-depth analysis Nexo is a platform that provides cryptocurrency lending services, supporting the mortgage and lending of more than 40 crypto assets, fiat currencies and stablecoins. It dominates the European and American markets and is committed to improving the efficiency, security and compliance of the platform. Many investors want to know where the Nexo exchange is registered, and the answer is: Switzerland. Nexo was founded in 2018 by Swiss fintech company Credissimo. Nexo Exchange Geographical Location and Regulation: Nexo is headquartered in Zug, Switzerland, a well-known cryptocurrency-friendly region. The platform actively cooperates with the supervision of various governments and has been in the US Financial Crime Law Enforcement Network (FinCEN) and Canadian Finance

A stack is a data structure that follows the LIFO (Last In, First Out) principle. In other words, The last element we add to a stack is the first one to be removed. When we add (or push) elements to a stack, they are placed on top; i.e. above all the

This tutorial will guide you how to sort stack elements in ascending order using Java. Stacks are the basic data structures in computer science, following the last-in-first-out (LIFO) principle. We will break down a simple and efficient method that uses an additional temporary stack, provides detailed step-by-step instructions, and includes a complete code example. This tutorial is ideal for those who want to enhance their understanding of stack operations and improve their Java programming skills. Sort the stack in ascending order using Java The stack is like a pile of books, you can only take the top one. That is, the stack is stored in first-out (LIFO) mode. The last item added is the first item removed. The following is the sorting of stack elements using the auxiliary stack
