除了springboot官方提供的redis-starter 连接池,有时候我们还需要连接另外一个独立的redis连接池,用来做一些特殊的中心化存储 。(如:用户的统一token信息)
下面笔者介绍下,springboot中如果自己封装jedisUtil ,操作redis.
1、pom.xml中引入
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.1.0</version>
</dependency>
2、JedisProperties属性类
@Getter
@Setter
public class JedisProperties {
private String address="redis://localhost:6379/0";
private int maxTotal =20;
private int maxIdle=5 ;
private int minIdle=5 ;
private long maxWailMillis=10000L ;
private boolean testOnBorrow=false;
private boolean testOnReturn=false;
}
3、JedisConfig配置类
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
@EnableConfigurationProperties(JedisProperties.class)
public class JedisConfig {
@Autowired
private JedisProperties jedisProperties;
@Bean
public JedisUtil jedisUtil(){
JedisUtil jedisUtil=new JedisUtil();
jedisUtil.setJedisProperties(jedisProperties);
return jedisUtil;
}
}
4、JedisUtil 工具bean
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import java.io.*;
import java.util.LinkedLis
SpringBoot自定义JedisUtil实现多Redis连接池

本文介绍了如何在SpringBoot项目中使用Jedis封装工具类JedisUtil,以支持多个Redis连接池,用于存储不同用途的数据。包括配置类、属性类和关键操作方法的实现。
最低0.47元/天 解锁文章
2544

被折叠的 条评论
为什么被折叠?



