Spring整合Jedis
-
pom文件添加依赖
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> </dependency>
-
spring文件添加配置(包括单机版和集群版,按照实际需求来使用)
-
JedisClient类(单机和集群)
/**
-
redis客户端集群版实现类
-
使用jedisPool可以关闭,但是jediscluster不能关,关闭了就不能使用了
*/
public class JedisClientCluster implements JedisClient {@Autowired
private JedisCluster jedisCluster;@Override
public String set(String key, String value) {
return jedisCluster.set(key, value);
}@Override
public String get(String key) {
return jedisCluster.get(key);
}@Override
public Long del(String key) {
return jedisCluster.del(key);
}@Override
public Long hset(String key, String item, String value) {
return jedisCluster.hset(key, item, value);
}@Override
public String hget(String key, String item) {
return jedisCluster.hget(key, item);
}@Override
public Long incr(String key) {
return jedisCluster.incr(key);
}@Override
public Long decr(String key) {
return jedisCluster.decr(key);
}@Override
public Long expire(String key, int second) {
return jedisCluster.expire(key, second);
}@Override
public Long ttl(String key) {
return jedisCluster.ttl(key);
}@Override
public Long hdel(String key, String item) {
return jedisCluster.hdel(key, item);
}
}
/**
-
redis客户端单机版实现类
*/
public class JedisClientSingle implements JedisClient {@Autowired
private JedisPool jedisPool;@Value("${REDIS_PASSWORD}")
private String REDIS_PASSWORD;private Jedis getJedisResource(JedisPool jedisPool) {
Jedis jedis = jedisPool.getResource();
if(StringUtils.isNotBlank(REDIS_PASSWORD)){
jedis.auth(REDIS_PASSWORD);
}
return jedis;
}@Override
public String set(String key, String value) {
Jedis jedis = getJedisResource(jedisPool);
String result = jedis.set(key, value);
jedis.close();
return result;
}@Override
public String get(String key) {
Jedis jedis = getJedisResource(jedisPool);
String result = jedis.get(key);
jedis.close();
return result;
}@Override
public Long del(String key) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.del(key);
jedis.close();
return result;
}@Override
public Long hset(String key, String item, String value) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.hset(key, item, value);
jedis.close();
return result;
}@Override
public String hget(String key, String item) {
Jedis jedis = getJedisResource(jedisPool);
String result = jedis.hget(key, item);
jedis.close();
return result;
}@Override
public Long incr(String key) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.incr(key);
jedis.close();
return result;
}@Override
public Long decr(String key) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.decr(key);
jedis.close();
return result;
}@Override
public Long expire(String key, int second) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.expire(key, second);
jedis.close();
return result;
}@Override
public Long ttl(String key) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.ttl(key);
jedis.close();
return result;
}@Override
public Long hdel(String key, String item) {
Jedis jedis = getJedisResource(jedisPool);
Long result = jedis.hdel(key, item);
jedis.close();
return result;
}
}
-