引入依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>6.0.0</version>
</dependency>
创立jedis对象,建立连接
private Jedis jedis;
@BeforeEach
void setUp(){
//1 建立连接,ip和端口号
jedis = new Jedis("192.168.150.101",6379);
// 设置密码
jedis.auth("123321");
//1 选择库
jedis.select(0);
}
使用Jedis,方法名与Redis命令一致
jedis.set("name","xiaoming");
String name = jedis.get("name")
释放资源
@AfterEach
void tearDown(){
if(jedis != null){
jedis.close();
}
}
close方法底层会判断,当你有连接池时归还连接池,而不真关闭
Jedis缺陷
Jedis本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此我们推荐大家使用Jedis连接池代替ledis的直连方式。
public class JedisConnectionFactory {
//定义连接池
private static final JedisPool jedisPool;
static {
//new一个配置对象
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
//最大连接
jedisPoolConfig.setMaxTotal(8);
//最大空闲连接
jedisPoolConfig.setMaxIdle(8);
//最小空闲连接
jedisPoolConfig.setMinIdle(0);
//设置最长等待时间, ms
jedisPoolConfig.setMaxWaitMillis(200);
//配置对象,host,端口,超时时间,密码
jedisPool = new JedisPool(jedisPoolConfig, "192.168.150.101", 6379,1000, "123321");
}
//获取 Jedis对象
public static Jedis getJedis(){
return jedisPool.getResource();
}
}