Class CacheBuilder<K,V>

java.lang.Object
io.leandev.appfuse.ehcache.CacheBuilder<K,V>
Type Parameters:
K - 快取鍵的類型
V - 快取值的類型

public class CacheBuilder<K,V> extends Object

Ehcache 快取建構器

提供流暢的 API 來建立和配置 Ehcache 快取實例。

  • Constructor Details

    • CacheBuilder

      public CacheBuilder(@NonNull org.ehcache.CacheManager cacheManager, @NonNull String name, @NonNull Class<K> keyType, @NonNull Class<V> valueType)
      建立快取建構器
      Parameters:
      cacheManager - Ehcache CacheManager 實例
      name - 快取名稱
      keyType - 鍵的類型
      valueType - 值的類型
  • Method Details

    • newCache

      public static <K,V> CacheBuilder<K,V> newCache(@NonNull org.ehcache.CacheManager cacheManager, @NonNull String name, @NonNull Class<K> keyType, @NonNull Class<V> valueType)
      建立新的快取建構器(靜態工廠方法)
      Type Parameters:
      K - 快取鍵的類型
      V - 快取值的類型
      Parameters:
      cacheManager - Ehcache CacheManager 實例
      name - 快取名稱
      keyType - 鍵的類型
      valueType - 值的類型
      Returns:
      新的 CacheBuilder 實例
    • heap

      public CacheBuilder<K,V> heap(long size)
      Assign memory cache in number of objects
      Parameters:
      size - memory cache in number of objects
      Returns:
      CacheBuilder
    • offheap

      public CacheBuilder<K,V> offheap(long size)
      Assign memory cache in MB
      Parameters:
      size - memory cache in MB
      Returns:
      CacheBuilder
    • disk

      public CacheBuilder<K,V> disk(long size)
      Assign disk cache in MB
      Parameters:
      size - disk cache in MB
      Returns:
      CacheBuilder
    • withTimeToLiveExpiration

      public CacheBuilder<K,V> withTimeToLiveExpiration(@NonNull Duration duration)
      設定 TTL (Time-To-Live) 過期策略
      Parameters:
      duration - 存活時間
      Returns:
      CacheBuilder 實例(支援鏈式呼叫)
    • withTimeToLiveExpirationByMinutes

      public CacheBuilder<K,V> withTimeToLiveExpirationByMinutes(long duration)
      設定 TTL 過期策略(以分鐘為單位)
      Parameters:
      duration - 存活時間(分鐘)
      Returns:
      CacheBuilder 實例(支援鏈式呼叫)
    • withTimeToIdleExpiration

      public CacheBuilder<K,V> withTimeToIdleExpiration(@NonNull Duration duration)
      設定 TTI (Time-To-Idle) 過期策略
      Parameters:
      duration - 閒置時間
      Returns:
      CacheBuilder 實例(支援鏈式呼叫)
    • withTimeToIdleExpirationByMinutes

      public CacheBuilder<K,V> withTimeToIdleExpirationByMinutes(long duration)
      設定 TTI 過期策略(以分鐘為單位)
      Parameters:
      duration - 閒置時間(分鐘)
      Returns:
      CacheBuilder 實例(支援鏈式呼叫)
    • withNoExpiration

      public CacheBuilder<K,V> withNoExpiration()
      設定永不過期
      Returns:
      CacheBuilder 實例(支援鏈式呼叫)
    • build

      public org.ehcache.Cache<K,V> build()
      建立快取實例
      Returns:
      配置完成的 Cache 實例