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

OSCHINA-MIRROR/ibyte-icloud-cache

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

На основе Spring Boot реализован аннотированный кэш с лёгким управлением страницей.

@Cache легче, чем spring cache, поддерживает настройку срока действия для отдельного кэша и позволяет удалять кэш по префиксу.

Для сериализации и десериализации используется fastjson, данные хранятся в виде json-строк в кэше.

icloud-cache может быть быстро использован в повседневных приложениях на базе Spring Boot.

Визуализация данных (не рекомендуется использовать в производственной среде)

  • Redis-клиент: просмотр

API кэша

Руководство пользователя

Maven-зависимости

<dependency>
    <groupId>com.gitee.ibyte</groupId>
    <artifactId>icloud-cache</artifactId>
    <version>0.0.2</version>
</dependency>

Конфигурация кэша

  1. Настройка источника данных Redis в файле application.yml:
#redis-cache 相关
redis:
    pool:
         maxActive: 300
         maxIdle: 100
         maxWait: 1000
    host: 127.0.0.1
    port: 6379
    password:
    timeout: 2000
    # 服务或应用名
    sysName: icloud
    enable: true
    database: 0

Включение кэширования

  1. Включите сканирование AOP:
@EnableiCloudCache

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

  1. Добавьте аннотацию @Cache или @CacheClear к сервису:

Описание аннотации

Настройка кэша: @Cache

Параметр аннотации Тип Описание
key Строка Выражение для динамического вычисления ключа
expires Целое число Срок действия кэша в минутах
desc Описание Описание кэша
parser Class<? extends ICacheResultParser> Пользовательский класс обработки результатов кэша
generator Class<? extends IKeyGenerator> Пользовательский генератор ключей кэша

Очистка кэша: @CacheClear

Параметр аннотации Тип Описание
pre Строка Очистить некоторые ключи с префиксом
key Строка Удалить один ключ
keys Массив строк Очистить ключи с некоторыми префиксами
generator Class<? extends IKeyGenerator> Генератор пользовательских ключей

Объяснение выражения для ключа по умолчанию

Выражение Описание Пример
@Cache(key="user:{1}")
public User getUserByAccount(String account)
{1} означает первый параметр
{2} означает второй параметр и т.д.
Если account = icloud, то ключ = user:icloud
@CacheClear(pre="user{1.account}")
User saveOrUpdate(User user)
{1} означает первый параметр
{1.xx} означает атрибут xxx первого параметра
Если account=icloud, то ключ = user:icloud

Лёгкий интерфейс управления

Адрес доступа: http://localhost:8080/cache

Интерфейс управления позволяет массово или по префиксу очищать зарегистрированный кэш icloud-cache, а также быстро просматривать содержимое кэша и продлевать срок его действия.

Демо

  1. Примеры кода в src/main/test:

CacheTest — основной класс запуска. service — пакет с примерами использования кэша, включая пользовательские выражения и анализ результатов, использование аннотаций.

Совместимость с режимом Spring MVC

Конфигурационный файл:

Файл application.properties:

redis.pool.maxActive = 300
redis.pool.maxIdle = 100
redis.pool.maxWait = 1000
redis.host = 127.0.0.1
redis.port = 6379
redis.password = 
redis.timeout = 2000
redis.database = 0
redis.sysName = icloud
redis.enable = true

Файл applicationContext.xml:

<!-- beans 头部-->
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
    http://www.springframework.org/schema/context  
    http://www.springframework.org/schema/context/spring-context-3.0.xsd"   
<!-- 开启AOP配置 -->    
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
<context:component-scan base-package="com.icloud.cache"/>
<context:annotation-config/> 

Зависимости Maven:

<properties>
    <!-- spring -->
    <spring.version>4.1.3.RELEASE</spring.version>
<properties>
<dependencies>

Комментарии ( 0 )

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

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/ibyte-icloud-cache.git
git@api.gitlife.ru:oschina-mirror/ibyte-icloud-cache.git
oschina-mirror
ibyte-icloud-cache
ibyte-icloud-cache
master