From cad250f02a66237258d1e96addd4704a1fdefb2f Mon Sep 17 00:00:00 2001
From: _老马_ <mayuanfei@163.com>
Date: 星期三, 17 一月 2024 13:47:44 +0800
Subject: [PATCH] !479 update 优化 使用预扫描实体类提升代码性能 * 优化了数据库字段加解密的缓存机制.在自动配置类启动时,就把有加密注解的类进行缓存,以提高速度.

---
 ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java
index 2a1391d..a48cb14 100644
--- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/manager/PlusSpringCacheManager.java
@@ -118,6 +118,10 @@
 
     @Override
     public Cache getCache(String name) {
+        // 閲嶅啓 cacheName 鏀寔澶氬弬鏁�
+        String[] array = StringUtils.delimitedListToStringArray(name, "#");
+        name = array[0];
+
         Cache cache = instanceMap.get(name);
         if (cache != null) {
             return cache;
@@ -132,9 +136,6 @@
             configMap.put(name, config);
         }
 
-        // 閲嶅啓 cacheName 鏀寔澶氬弬鏁�
-        String[] array = StringUtils.delimitedListToStringArray(name, "#");
-        name = array[0];
         if (array.length > 1) {
             config.setTTL(DurationStyle.detectAndParse(array[1]).toMillis());
         }
@@ -155,7 +156,7 @@
     private Cache createMap(String name, CacheConfig config) {
         RMap<Object, Object> map = RedisUtils.getClient().getMap(name);
 
-        Cache cache = new RedissonCache(map, allowNullValues);
+        Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, allowNullValues));
         if (transactionAware) {
             cache = new TransactionAwareCacheDecorator(cache);
         }
@@ -169,7 +170,7 @@
     private Cache createMapCache(String name, CacheConfig config) {
         RMapCache<Object, Object> map = RedisUtils.getClient().getMapCache(name);
 
-        Cache cache = new RedissonCache(map, config, allowNullValues);
+        Cache cache = new CaffeineCacheDecorator(new RedissonCache(map, config, allowNullValues));
         if (transactionAware) {
             cache = new TransactionAwareCacheDecorator(cache);
         }

--
Gitblit v1.9.3