Java API の開発における一般的な要件は、システムのパフォーマンスと応答速度を向上させるためにデータをキャッシュすることです。 Ehcache3 は、Java ベースのオープンソースのキャッシュ フレームワークであり、Java 開発におけるキャッシュ処理で広く使用されています。
この記事では、Java API の開発におけるキャッシュ処理に Ehcache3 を使用する方法を次の点を含めて紹介します:
1. 依存関係の構成
キャッシュ処理に Ehcache3 を使用する以前は、Ehcache3 の依存関係をプロジェクトに追加する必要がありました。 Maven を使用して依存関係を構成できます (例:
<dependency> <groupId>org.ehcache</groupId> <artifactId>ehcache</artifactId> <version>3.8.1</version> </dependency>
2. キャッシュ構成
コード内でキャッシュ処理に Ehcache3 を使用する前に、キャッシュを構成する必要があります。 Ehcache3 の構成は主に、キャッシュ構成とキャッシュ マネージャー構成の 2 つの部分に分かれています。
キャッシュ構成は、キャッシュの一部のプロパティを設定するために使用されます。CacheConfiguration クラスを使用して、コード内で構成できます。例:
import org.ehcache.config.builders.CacheConfigurationBuilder; import org.ehcache.config.builders.ResourcePoolsBuilder; import org.ehcache.config.units.EntryUnit; import org.ehcache.config.units.MemoryUnit; CacheConfiguration<String, String> cacheConfiguration = CacheConfigurationBuilder.newCacheConfigurationBuilder(String.class, String.class, ResourcePoolsBuilder.newResourcePoolsBuilder() .heap(100, EntryUnit.ENTRIES) //设置最大缓存数量 .offheap(1, MemoryUnit.GB)) //设置 off-heap 缓存的容量 .build();
キャッシュ マネージャー構成は、すべてのプロパティを管理するために使用されます。コード内 CacheManager クラスを使用して、キャッシュ インスタンスを構成および取得できます。例:
import org.ehcache.config.builders.CacheManagerBuilder; CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder().build(); cacheManager.init(); Cache<String, String> cache = cacheManager.createCache("myCache", cacheConfiguration);
上記のコードは、「myCache」という名前のキャッシュ インスタンスを作成します。キャッシュ インスタンスは、導入されたcacheConfiguration を使用して構成されます。以前。
3. キャッシュ操作
キャッシュ操作を実行する場合、Ehcache3 はキャッシュされたデータの追加、取得、削除などの操作のための一連の API メソッドを提供します。一般的に使用されるキャッシュ操作方法をいくつか示します。
cache.put("key", "value");
String value = cache.get("key");
cache.remove("key");
cache.clear();
import org.ehcache.config.CacheConfiguration; import org.ehcache.config.Eviction; import org.ehcache.config.builders.CacheConfigurationBuilder; import org.ehcache.config.builders.ResourcePoolsBuilder; import org.ehcache.config.units.EntryUnit; CacheConfiguration<String, String> cacheConfiguration = CacheConfigurationBuilder.newCacheConfigurationBuilder(String.class, String.class, ResourcePoolsBuilder.newResourcePoolsBuilder() .heap(100, EntryUnit.ENTRIES) .offheap(1, MemoryUnit.GB)) .withExpiry(Expirations.timeToLiveExpiration(Duration.ofSeconds(30))) //设置过期时间30s .withEvictionAdvisor(key -> key.contains("abc")) //指定删除策略为包含"abc"的key .withEviction(Eviction.noAdvice().setPrioritizer(Prioritization.LRU)) //设置缓存淘汰策略为LRU .build();
以上がJava API開発におけるキャッシュのためのEhCache3の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。