diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/ShutdownManager.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/ShutdownManager.java index afdf44b0..78a4af37 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/ShutdownManager.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/ShutdownManager.java @@ -2,6 +2,7 @@ package com.ruoyi.framework.manager; import com.ruoyi.framework.shiro.web.session.SpringSessionValidationScheduler; import net.sf.ehcache.CacheManager; +import org.apache.shiro.cache.ehcache.EhCacheManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -21,12 +22,15 @@ public class ShutdownManager @Autowired(required = false) private SpringSessionValidationScheduler springSessionValidationScheduler; + @Autowired(required = false) + private EhCacheManager ehCacheManager; + @PreDestroy public void destroy() { shutdownSpringSessionValidationScheduler(); shutdownAsyncManager(); - CacheManager.getCacheManager("ruoyi").shutdown(); + shutdownEhCacheManager(); } /** @@ -63,4 +67,21 @@ public class ShutdownManager logger.error(e.getMessage(), e); } } + + private void shutdownEhCacheManager() + { + try + { + logger.info("====关闭缓存===="); + if (ehCacheManager != null) + { + CacheManager cacheManager = ehCacheManager.getCacheManager(); + cacheManager.shutdown(); + } + } + catch (Exception e) + { + logger.error(e.getMessage(), e); + } + } }