1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/gosalelab-aspect-cache

Клонировать/Скачать
README.md 6.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 22:47 9256f99

Aspect Cache — это облегчённый кеш для Spring Boot, который использует аспектно-ориентированное программирование и аннотации. В настоящее время Aspect Cache поддерживает EHCache и Redis.

Aspect Cache может работать с POJO, Map и List, а также позволяет настраивать ключи кеша и логику работы с кешем. Для генерации ключей кеша используется Spring Expression Language (SpEL).

Использование

  1. Импортировать пакет:
<dependency>
    <artifactId>aspect-cache</artifactId>
    <groupId>com.gosalelab</groupId>
    <version>1.0.0</version>
</dependency>
  1. Применить аннотацию к классу запуска Spring Boot:

@EnableAspectCache

  1. Настроить параметры:
  • com.gosalelab.cache.enable=true — включить Aspect Cache;
  • com.gosalelab.cache.provider=eh или com.gosalelab.cache.provider=redis — выбрать провайдера кеша (EHCache или Redis).
Параметр Значение Тип По умолчанию Обязательно Описание
com.gosalelab.cache enable boolean false Да Включить Aspect Cache
com.gosalelab.cache provider String eh Да Провайдер кеша: EHCache или Redis
com.gosalelab.cache expire-time int 3600 секунд (полчаса) Нет Время жизни кеша
com.gosalelab.cache key-generator String default Нет Генератор ключей кеша. Можно использовать собственный класс, реализовав интерфейс KeyGenerator

Для настройки EHCache можно использовать следующие параметры:

Параметр Значение Тип По умолчанию Обязательно Описание
com.gosalelab.cache.ehcache default-cache-name String ehcache_cache Нет Имя кеша EHCache по умолчанию
com.gosalelab.cache.ehcache disk int 200 Нет Размер диска в МБ
com.gosalelab.cache.ehcache ehcache-file-name String ehcache.xml Нет Файл конфигурации EHCache. Используется, если установлен параметр com.gosalelab.cache.ehcache.use-xml-file-config
com.gosalelab.cache.ehcache max-entries-local-heap int 1000 Нет Максимальное количество элементов в куче
com.gosalelab.cache.ehcache off-heap int 20 Нет Максимальный размер некучевого пространства в МБ
com.gosalelab.cache.ehcache use-xml-file-config boolean False Нет Использовать файл конфигурации XML

Для настройки Redis можно использовать следующие параметры:

Параметр Значение Тип По умолчанию Обязательно Описание
com.gosalelab.cache.redis-cache database int 0 Нет База данных Redis
com.gosalelab.cache.redis-cache host String 127.0.0.1 Нет Адрес сервера Redis
com.gosalelab.cache.redis-cache max-idle int 100 Нет Максимальное число неактивных соединений
com.gosalelab.cache.redis-cache max-total int 1000 Нет Общее максимальное число соединений
com.gosalelab.cache.redis-cache max-wait-millis int 1000 Нет Максимальная задержка при получении соединения в миллисекундах
com.gosalelab.cache.redis-cache min-idle int 20 Нет Минимальное число неактивных соединений
com.gosalelab.cache.redis-cache password String / Нет Пароль для подключения к серверу Redis
com.gosalelab.cache.redis-cache port int 6379 Нет Порт сервера Redis
com.gosalelab.cache.redis-cache timeout int 2000 Нет Таймаут подключения в миллисекундах
  1. Настроить ключи кеша:
  • Использование SpEL:

    • @CacheInject: для записи и чтения из кеша;
    • key: ключ кеша;
    • expire: время жизни кеша в секундах;
    • pre: префикс ключа кеша;
    • desc: описание;
    • opType: тип операции с кешем (CacheOpType.READ_WRITE, CacheOpType.WRITE или CacheOpType.READ_ONLY).
  • @CacheEvict: для удаления элемента из кеша.

    • key: ключ элемента;
    • pre: префикс ключа элемента;
    • desc: описание.
  1. Добавить конфигурацию:
  • Создать папку properties в корне проекта;
  • Добавить файл CacheProperties для инициализации конфигурации;
  • Применить аннотацию @NestedConfigurationProperty к файлу CacheProperties;
  • Перекомпилировать проект;
  • Использовать параметры конфигурации в файле application.properties.
  1. Использовать аннотации:
  • @CacheInject — для записи в кеш и чтения из него;
  • @CacheEvict — для удаления элементов из кеша.
  1. Дополнительные возможности:
  • В планах добавить документацию на английском языке, бэкенд для управления кешем и оптимизировать код.
  1. Исходный код:
  1. Контакты:
  • Если у вас возникли проблемы, вы можете оставить сообщение на Github или Gitee;
  • Также вы можете внести свой вклад в проект.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/gosalelab-aspect-cache.git
git@api.gitlife.ru:oschina-mirror/gosalelab-aspect-cache.git
oschina-mirror
gosalelab-aspect-cache
gosalelab-aspect-cache
master