Код в постоянных документах EHcache не работает java - PullRequest
1 голос
/ 24 февраля 2020

Я хочу использовать EHcache в моем java проекте. Они имеют постоянную поддержку хранения. Я прочитал документы https://www.ehcache.org/documentation/2.7/configuration/fast-restart.html и нашел этот код

Configuration cacheManagerConfig = new Configuration()
    .diskStore(new DiskStoreConfiguration()
        .path("/tmp/file.txt"));
CacheConfiguration cacheConfig = new CacheConfiguration()
    .name("my-cache")
    .maxBytesLocalHeap(16, MemoryUnit.MEGABYTES)
    .maxBytesLocalOffHeap(256, MemoryUnit.MEGABYTES)
    .persistence(new PersistenceConfiguration().strategy(Strategy.LOCALTEMPSWAP));

cacheManagerConfig.addCache(cacheConfig);

CacheManager cacheManager = new CacheManager(cacheManagerConfig);
Ehcache myCache = cacheManager.getEhcache("my-cache");

Я импортировал зависимость, но она показывает много ошибок. Ошибка:

'Configuration' is abstract; cannot be instantiated

Пожалуйста, предоставьте несколько простых шагов, чтобы использовать эту библиотеку. Я читаю документы, но код не работает. Помогите мне с некоторыми решениями.

1 Ответ

0 голосов
/ 24 февраля 2020

нашел ответ.

    try(PersistentCacheManager persistentCacheManager =
                newCacheManagerBuilder()
                        .with(persistence("/tmp/myProjectCache"))
                        .withCache("test-cache",
                                newCacheConfigurationBuilder(
                                        String.class, String.class,
                                        newResourcePoolsBuilder()
                                                .heap(1, EntryUnit.ENTRIES)
                                                .offheap(1, MemoryUnit.MB)
                                                .disk(2, MemoryUnit.MB, true)
                                )
                        ).build(true)) {
        org.ehcache.Cache cache = persistentCacheManager.getCache("test-cache", String.class, String.class);

        cache.put("name1","steven");
        cache.put("name2","prince");

        System.out.println(cache.get("name1"));
        System.out.println(cache.get("name2"));
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...