提交 2b931a58 编写于 作者: Z zhengjie

Merge branch 'master' of gitee.com:elunez/eladmin

......@@ -35,40 +35,6 @@ import java.time.Duration;
@EnableConfigurationProperties(RedisProperties.class)
public class RedisConfig extends CachingConfigurerSupport {
@Value("${spring.redis.host}")
private String host;
@Value("${spring.redis.port}")
private int port;
@Value("${spring.redis.timeout}")
private int timeout;
@Value("${spring.redis.jedis.pool.max-idle}")
private int maxIdle;
@Value("${spring.redis.jedis.pool.max-wait}")
private long maxWaitMillis;
@Value("${spring.redis.password}")
private String password;
@Value("${spring.redis.database}")
private int database;
/**
* 配置 redis 连接池
* @return
*/
@Bean
public JedisPool redisPoolFactory(){
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxIdle(maxIdle);
jedisPoolConfig.setMaxWaitMillis(maxWaitMillis);
String pwd = StringUtils.isBlank(password) ? null : password;
return new JedisPool(jedisPoolConfig, host, port, timeout, pwd, database);
}
/**
* 设置 redis 数据默认过期时间,默认1天
* 设置@cacheable 序列化方式
......@@ -126,4 +92,4 @@ public class RedisConfig extends CachingConfigurerSupport {
return sb.toString();
};
}
}
\ No newline at end of file
}
......@@ -7,6 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
......@@ -21,72 +22,38 @@ import java.util.List;
public class RedisServiceImpl implements RedisService {
@Autowired
JedisPool pool;
RedisTemplate redisTemplate;
@Override
public Page findByKey(String key, Pageable pageable){
Jedis jedis = null;
try{
jedis = pool.getResource();
List<RedisVo> redisVos = new ArrayList<>();
if(!key.equals("*")){
key = "*" + key + "*";
}
for (String s : jedis.keys(key)) {
RedisVo redisVo = new RedisVo(s,jedis.get(s));
redisVos.add(redisVo);
}
Page<RedisVo> page = new PageImpl<RedisVo>(
PageUtil.toPage(pageable.getPageNumber(),pageable.getPageSize(),redisVos),
pageable,
redisVos.size());
return page;
}finally{
if(null != jedis){
jedis.close(); // 释放资源还给连接池
}
List<RedisVo> redisVos = new ArrayList<>();
if(!key.equals("*")){
key = "*" + key + "*";
}
for (Object s : redisTemplate.keys(key)) {
RedisVo redisVo = new RedisVo(s.toString(),redisTemplate.opsForValue().get(s.toString()).toString());
redisVos.add(redisVo);
}
Page<RedisVo> page = new PageImpl<RedisVo>(
PageUtil.toPage(pageable.getPageNumber(),pageable.getPageSize(),redisVos),
pageable,
redisVos.size());
return page;
}
@Override
public void save(RedisVo redisVo) {
Jedis jedis = null;
try{
jedis = pool.getResource();
jedis.set(redisVo.getKey(),redisVo.getValue());
}finally{
if(null != jedis){
jedis.close(); // 释放资源还给连接池
}
}
redisTemplate.opsForValue().set(redisVo.getKey(),redisVo.getValue());
}
@Override
public void delete(String key) {
Jedis jedis = null;
try{
jedis = pool.getResource();
jedis.del(key);
}finally{
if(null != jedis){
jedis.close(); // 释放资源还给连接池
}
}
redisTemplate.delete(key);
}
@Override
public void flushdb() {
Jedis jedis = null;
try{
jedis = pool.getResource();
jedis.flushAll();
}finally{
if(null != jedis){
jedis.close(); // 释放资源还给连接池
}
}
redisTemplate.getConnectionFactory().getConnection().flushDb();
}
}
......@@ -24,16 +24,6 @@ spring:
host: 127.0.0.1
port: 6379
password:
jedis:
pool:
#最大连接数
max-active: 100
#最大阻塞等待时间(负数表示没限制)
max-wait: 2000
#最大空闲
max-idle: 500
#最小空闲
min-idle: 8
#连接超时时间
timeout: 5000
......
......@@ -70,12 +70,6 @@
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--Spring boot end-->
......@@ -231,4 +225,4 @@
</snapshots>
</pluginRepository>
</pluginRepositories>
</project>
\ No newline at end of file
</project>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册