Table of Contents
Redis 介绍
Redis C客户端的使用方法
Redis Java客户端的使用方法
Home Database Mysql Tutorial Redisc/c++,java客户端连接

Redisc/c++,java客户端连接

Jun 07, 2016 pm 03:56 PM
c++ java redis client connect

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&#39;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;
}
Copy after login

在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();
	}
}
Copy after login
运行上面的程序即可访问Redis。也可以用maven管理jar包依赖,据说比较好用。
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Break or return from Java 8 stream forEach? Break or return from Java 8 stream forEach? Feb 07, 2025 pm 12:09 PM

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 Java Made Simple: A Beginner's Guide to Programming Power Oct 11, 2024 pm 06:30 PM

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;

Create the Future: Java Programming for Absolute Beginners Create the Future: Java Programming for Absolute Beginners Oct 13, 2024 pm 01:32 PM

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.

Java Program to Find the Volume of Capsule Java Program to Find the Volume of Capsule Feb 07, 2025 am 11:37 AM

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

How to Run Your First Spring Boot Application in Spring Tool Suite? How to Run Your First Spring Boot Application in Spring Tool Suite? Feb 07, 2025 pm 12:11 PM

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

Which country is the Nexo exchange from? Where is it? A comprehensive introduction to the Nexo exchange Which country is the Nexo exchange from? Where is it? A comprehensive introduction to the Nexo exchange Mar 05, 2025 pm 05:09 PM

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

Java Program to insert an element at the Bottom of a Stack Java Program to insert an element at the Bottom of a Stack Feb 07, 2025 am 11:59 AM

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

Java program to sort the elements of a given stack in ascending order Java program to sort the elements of a given stack in ascending order Feb 07, 2025 am 11:34 AM

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

See all articles