From 1129cc278ec2f7f1fd3eb325b11974bd884346da Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 09 四月 2025 13:48:49 +0800
Subject: [PATCH] 灌溉计划详情增加计划状态
---
pipIrr-platform/pipIrr-web/pipIrr-web-sso/src/main/java/com/dy/sso/config/CaffeineCacheConfiguration.java | 62 +++++++++++++++++++++++++++++++
1 files changed, 62 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sso/src/main/java/com/dy/sso/config/CaffeineCacheConfiguration.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sso/src/main/java/com/dy/sso/config/CaffeineCacheConfiguration.java
new file mode 100644
index 0000000..1c85166
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sso/src/main/java/com/dy/sso/config/CaffeineCacheConfiguration.java
@@ -0,0 +1,62 @@
+package com.dy.sso.config;
+
+
+import com.dy.common.util.NumUtil;
+import com.github.benmanes.caffeine.cache.Caffeine;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.cache.CacheManager;
+import org.springframework.cache.caffeine.CaffeineCacheManager;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import java.util.concurrent.TimeUnit;
+
+@Configuration
+public class CaffeineCacheConfiguration {
+ private static final int cacheInitialCapacityDefault = 10 ;
+ private static final int cacheMaximumSizeDefault = 10000 ;
+ private static final int cacheDurationDefault = 720 ;
+
+ @Value("${pipIrr.sso.cacheMaximumSize}")
+ private String cacheMaximumSize ;
+
+ @Value("${pipIrr.sso.cacheDuration}")
+ private String cacheDuration ;
+ /*
+ initialCapacity=[integer]: 鍒濆鐨勭紦瀛樼┖闂村ぇ灏�
+ maximumSize=[long]: 缂撳瓨鐨勬渶澶ф潯鏁�
+ maximumWeight=[long]: 缂撳瓨鐨勬渶澶ф潈閲�
+ expireAfterAccess=[duration]: 鏈�鍚庝竴娆″啓鍏ユ垨璁块棶鍚庣粡杩囧浐瀹氭椂闂磋繃鏈�
+ expireAfterWrite=[duration]: 鏈�鍚庝竴娆″啓鍏ュ悗缁忚繃鍥哄畾鏃堕棿杩囨湡
+ refreshAfterWrite=[duration]: 鍒涘缓缂撳瓨鎴栬�呮渶杩戜竴娆℃洿鏂扮紦瀛樺悗缁忚繃鍥哄畾鐨勬椂闂撮棿闅旓紝鍒锋柊缂撳瓨
+ weakKeys: 鎵撳紑key鐨勫急寮曠敤
+ weakValues锛氭墦寮�value鐨勫急寮曠敤
+ softValues锛氭墦寮�value鐨勮蒋寮曠敤
+ recordStats锛氬紑鍙戠粺璁″姛鑳�
+ 娉ㄦ剰锛�
+ expireAfterWrite鍜宔xpireAfterAccess鍚屾椂瀛樺湪鏃讹紝浠xpireAfterWrite涓哄噯銆�
+ maximumSize鍜宮aximumWeight涓嶅彲浠ュ悓鏃朵娇鐢�
+ weakValues鍜宻oftValues涓嶅彲浠ュ悓鏃朵娇鐢偡weakValues鍜宻oftValues涓嶅彲浠ュ悓鏃朵娇鐢�
+ */
+ @Bean
+ public CacheManager cacheManager() {
+ int cacheMaximumSizeInt;
+ int cacheDurationInt;
+ if(NumUtil.isPlusIntNumber(cacheMaximumSize)){
+ cacheMaximumSizeInt = Integer.parseInt(cacheMaximumSize) ;
+ }else{
+ cacheMaximumSizeInt = cacheMaximumSizeDefault ;
+ }
+ if(NumUtil.isPlusIntNumber(cacheDuration)){
+ cacheDurationInt = Integer.parseInt(cacheDuration) ;
+ }else{
+ cacheDurationInt = cacheDurationDefault ;
+ }
+ CaffeineCacheManager cacheManager = new CaffeineCacheManager();
+ cacheManager.setCaffeine(Caffeine.newBuilder()
+ .initialCapacity(cacheInitialCapacityDefault)
+ .maximumSize(cacheMaximumSizeInt)
+ .expireAfterAccess(cacheDurationInt, TimeUnit.MINUTES));
+
+ return cacheManager;
+ }
+}
--
Gitblit v1.8.0