package com.chinaztt.mes.common.util;
|
|
import com.chinaztt.mes.common.aop.MybatisPlusDeleteAspect;
|
import com.chinaztt.mes.common.wrapper.ResultMapHelper;
|
import lombok.AllArgsConstructor;
|
import org.springframework.boot.CommandLineRunner;
|
import org.springframework.data.redis.connection.RedisConnection;
|
import org.springframework.data.redis.core.RedisTemplate;
|
import org.springframework.stereotype.Component;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Set;
|
|
/**
|
* 启动时候清空缓存
|
*
|
* @Author: zhangxy
|
* @Date: 2020-09-24 9:37
|
*/
|
@Component
|
@AllArgsConstructor
|
public class CacheClearRunner implements CommandLineRunner {
|
|
private RedisTemplate redisTemplate;
|
|
|
@Override
|
public void run(String... args) {
|
List<String> list = new ArrayList<>();
|
list.add("*" + ResultMapHelper.CACHE_KEY + "*");
|
list.add("*" + MybatisPlusDeleteAspect.CACHE_KEY + "*");
|
|
RedisConnection connection = redisTemplate.getConnectionFactory().getConnection();
|
for(String key : list) {
|
Set<byte[]> caches = connection.keys(key.getBytes());
|
if (!caches.isEmpty()) {
|
connection.del(caches.toArray(new byte[][]{}));
|
}
|
}
|
}
|
|
}
|