【Java】使用Jedis连接redis

Jedis简介

实际开发中,我们需要用Redis的连接工具连接Redis然后操作Redis

对于主流语言,Redis都提供了对应的客户端;

https://redis.io/clients

https://redis.io/clients#java

提供了很多客户端 官方推荐的是Jedis  托管地址:https://github.com/xetorthio/jedis

Jedis连接

建一个Maven项目,

pom里加下jedis依赖,

1

2

3

4

5

<dependency>

    <groupId>redis.clients</groupId>

    <artifactId>jedis</artifactId>

    <version>2.9.0</version>

</dependency>

单redis - Jedis

import redis.clients.jedis.Jedis;

public class RedisCon {

	private static Jedis jredis;

	/**
	 * 
	 * @param host 地址
	 * @param port 端口
	 * @return 链接对象
	 */
	public static Jedis connectJredis(String host, int port,String password) {
		try {
			jredis = new Jedis(host, port, 5000);
			//redis访问密码
			jredis.auth(password);
		} catch (Exception e) {
			System.out.println("Exception :" + e);
		}
		return jredis;
	}

	/**
	 * 
	 * TODO 断开连接
	 *
	 */
	public static void closeJredis() {
		if (jredis != null) {
			System.out.println("** 断开与服务器的连接 **");
			jredis.quit();
		}
	}

	public static void main(String[] args) {
		//连接redis
		Jedis jredis2 = connectJredis("192.168.1.1", 6379,"password");
		//获取redis缓存值
		String mobileRedis = jredis2.get("usercenter:user:mobile:17766660115");
		System.out.println(mobileRedis);
	}

}

Redis集群 - JedisCluster

import java.util.HashSet;
import java.util.Set;
import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
import com.alibaba.fastjson.JSONObject;
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;

/**
 * @description TODO redis集群
 * @author jerry.li
 * @date Jul 4, 2018
 * @version v1.0
 */

public class JedisClusterCon2 {

	private static JedisCluster jedisCluster;

	/**
	 * 
	 * @param host 地址
	 * @param port 端口
	 * @param password 密码
	 * @return 链接对象
	 */
	public static JedisCluster connectJredisCluster() {
		Set<HostAndPort> hosts = new HashSet<>();
		HostAndPort host1 = new HostAndPort("192.168.1.1", 8001);
		HostAndPort host2 = new HostAndPort("192.168.1.2", 8001);
		HostAndPort host3 = new HostAndPort("192.168.1.3", 8001);
		hosts.add(host1);
		hosts.add(host2);
		hosts.add(host3);
		try {

			jedisCluster = new JedisCluster(hosts, 5000, 5000, 5, "password", new GenericObjectPoolConfig());
		} catch (Exception e) {
			System.out.println("Exception :" + e);
		}
		return jedisCluster;
	}

	/**
	 * 
	 * TODO 断开连接
	 *
	 */
	@SuppressWarnings("deprecation")
	public static void closeJredis() {
		if (jedisCluster != null) {
			System.out.println("** 断开与服务器的连接 **");
			jedisCluster.quit();
		}
	}

	public static void main(String[] args) {

	    String mobile = "17766660115";	
	    JedisCluster jedisCluster2 = connectJredisCluster();		
            JSONObject params = JSONObject.parseObject(jedisCluster2.get("usercenter:user:mobile:" + mobile));
            String userId = params.get("userId").toString();
            System.out.println(userId);
        
	}

}

猜你喜欢

转载自blog.csdn.net/qq_27791709/article/details/80924405