使用jedis连接redis

注:使用的jar包:
在这里插入图片描述

一、不使用连接池

1、test class

package com.test;

import org.junit.jupiter.api.Test;

import com.utils.ConnectUtils;

import redis.clients.jedis.Jedis;

public class MyTest {
	
	private Jedis jedis;
	
	@Test
	public void test01() {
		
		String host = "127.0.0.1";
		int port = 6379;
		Jedis jedis = new Jedis(host, port);
		jedis.auth("123456");
		
		jedis.set("id", "1");
		jedis.set("name", "张三");
		jedis.set("age", "20");
		
		String id = jedis.get("id");
		String age = jedis.get("age");
		String name = jedis.get("name");
		
		System.out.println("id = " + id);
		System.out.println("age = " + age);
		System.out.println("name = " + name);
	}
}

二、使用连接池

1、utils class

package com.utils;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class ConnectUtils {
	
	private static JedisPoolConfig config;
	private static JedisPool jedisPool;


	/**
	 * 连接redis
	 * @param ip	redis的绑定的ip地址
	 * @param port	redis启动服务时的端口号
	 */
	public static Jedis open(String host, int port) {
		
		if (config == null) {
			
			//创建redis连接池配置对象
			config = new JedisPoolConfig();
			
			//设置连接池连接最大等待时间
			config.setMaxWaitMillis(0);
			
			//设置连接池中的最大连接资源数
			config.setMaxTotal(30);
			
			//设置连接池中最大的空闲连接资源数
			config.setMaxIdle(2);
		}
		
		if (jedisPool == null) {
			
			//创建redis连接池
			jedisPool = new JedisPool(config, host, port);
		}
		
		//从redis连接池中或取连接资源
		Jedis jedis = jedisPool.getResource();
		
		//返回jedis对象
		return jedis;
		
	}
	
	
	/**
	 * 关闭jedis连接资源
	 */
	public static void close(Jedis jedis) {
		if (jedis != null) {
			jedis.close();
		}
	}

}

2、test class

package com.test;

import org.junit.jupiter.api.Test;

import com.utils.ConnectUtils;

import redis.clients.jedis.Jedis;

public class MyTest {

private Jedis jedis;

@Test
public void test02() {
	
	try {
		
		//定义redis连接要素
		String host = "127.0.0.1";
		int port = 6379;
		
		//判断jedis是否为空
		if (jedis == null) {
			jedis = ConnectUtils.open(host, port);
		}
		
		//密码登录redis
		jedis.auth("123456");
		
		//使用jedis
		jedis.set("id", "2");
		jedis.set("name", "李四");
		jedis.set("age", "24");
		
		//从redis数据库中获取数据
		String id = jedis.get("id");
		String age = jedis.get("age");
		String name = jedis.get("name");
		
		//打印获取到的redis数据
		System.out.println("id = " + id);
		System.out.println("age = " + age);
		System.out.println("name = " + name);
		
	} finally {
		ConnectUtils.close(jedis);
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值