目的:当java学习到一定程度上的时候, 会慢慢接触到分布式, 缓存等等东西, 其中有一样很重要的技术, 就是redis数据库, 这里给大家介绍一下如何连接redis以及redis连接池的使用.
开发环境:idea + jdk1.8 + redis-server + redis客户端
步骤: 首先打开redis-server(windows版), 然后新建一个java项目, 连接redis需要导入两个包,如下图.
然后....然后直接上代码, 大家去运行吧.
package com.jdis.demo;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.io.IOException;
import java.util.Properties;
/**
* redis demo,简单使用redis
* Date:2019-5-9
* @author xiauhacker
*/
public class JedisDemo {
/**
* 获得单一的jedis对象操作数据库
*/
@Test
public void singleJedis(){
// 获得连接对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
// 设置密码(没有密码的话下一步省略)
jedis.auth("TopE#6%@2o1^7ll");
//存储值
jedis.set("addr", "北京");
// 取值
String addr = jedis.get("addr");
System.out.println(addr);
// 关闭资源
jedis.close();
}
/**
* 使用连接池技术操作redis数据库
*/
@Test
public void poolJedis(){
// 加载配置文件
Properties properties = new Properties();
try {
properties.load(JedisDemo.class.getClassLoader().getResourceAsStream("redis.properties"));
} catch (IOException e) {
e.printStackTrace();
}
// 创建连接池配置对象
JedisPoolConfig config = new JedisPoolConfig();
// 最大闲置个数
config.setMaxIdle(Integer.parseInt(properties.getProperty("redis.maxIdle")));
// 总连接数
config.setMaxTotal(Integer.parseInt(properties.getProperty("redis.maxTotal")));
// 最小闲置个数
config.setMinIdle(Integer.parseInt(properties.getProperty("redis.minIdle")));
// 创建一个连接池
JedisPool pool = new JedisPool(config, properties.getProperty("redis.host"), Integer.parseInt(properties.getProperty("redis.port")),
2000, properties.getProperty("redis.password"));
// 从连接池获取一个连接资源
Jedis jedis = pool.getResource();
// 操作redis
jedis.set("pooltest", "json");
System.out.println(jedis.get("pooltest"));
// 关闭资源
jedis.close();
// 关闭池子(这里测试demo直接关闭连接池)
pool.close();
}
}
贴一下运行结果...
温馨提示:有不清楚的地方可以加我q:2830730962 备注:咨询探讨, 我们一起研究.
需要jar包的可以直接点击链接下载, 或者去maven仓库下载.