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

OSCHINA-MIRROR/luhan123-redis-cache-expire-spring-boot-starter-parent

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 17:02 0dd920a

redis-cache-expire-spring-boot-starter-parent

Введение

При использовании redis в качестве spring cache компонента, использование аннотации @CacheExpire поддерживает настраиваемое время истечения срока действия.

  1. Поддерживает настройку времени истечения срока действия на уровне метода.
  2. Поддерживает добавление аннотации к классу, чтобы методы кэширования в этом классе имели общее время истечения срока действия.
  3. Поддерживает игнорирование функции.

Архитектура программного обеспечения

На основе spring-boot-starter-data-redis была изменена реализация RedisCacheManager и его поведение getCache. На этой основе была добавлена функция настройки настраиваемого времени истечения срока действия.

Инструкция по использованию

Поскольку redis-cache-expire-spring-boot-starter не интегрирован с spring-boot-starter-data-redis, необходимо вручную импортировать зависимости. В основном это сделано для удобства использования собственных версий spring-boot-starter-data-redis.

  1. Импортируйте зависимость spring-boot-starter-data-redis:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
  1. Импортируйте зависимость этого стартера:
<dependency>
    <groupId>top.luhancc.redis</groupId>
    <artifactId>redis-cache-expire-spring-boot-starter</artifactId>
</dependency>

Ещё не помещён в центральный репозиторий maven.

  1. Как и при использовании spring cache, используйте @EnableCaching для включения кеша:
@SpringBootApplication
@EnableCaching
public class RedisCacheExpireApplication {
    public static void main(String[] args) {
        SpringApplication.run(RedisCacheExpireApplication.class, args);
    }
}
  1. Добавьте аннотацию @CacheExpire к методам, где требуется добавить время истечения срока действия кэша.

Пример кода

Уровень метода:

@Service
public class CacheService {
    @Cacheable(value = "cache-test", key = "targetClass + methodName")
    @CacheExpire(value = 100)
    public String data() {
        System.out.println("Кэш не используется, выполняется прямой запрос");
        return "hello this data is redis cache";
    }
    @Cacheable(value = "cache-test", key = "targetClass + methodName")
    public String data2() {
        System.out.println("Кэш не используется, выполняется прямой запрос");
        return "hello this data is redis cache is not expire";
    }
}

Уровень класса:

@CacheExpire
@Cacheable(value = "cache-test2", key = "targetClass + methodName")
@Service
public class CacheService2 {
    public String data4() {
        return "this is cache data 2";
    }
    @CacheExpire(value = 10, ignore = true)
    public String data3() {
        return "this is cache data 3";
    }
}

Участие в проекте

  1. Fork этого репозитория.
  2. Создайте ветку feature/xxx.
  3. Отправьте код.
  4. Создайте Pull Request.

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

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

1
https://api.gitlife.ru/oschina-mirror/luhan123-redis-cache-expire-spring-boot-starter-parent.git
git@api.gitlife.ru:oschina-mirror/luhan123-redis-cache-expire-spring-boot-starter-parent.git
oschina-mirror
luhan123-redis-cache-expire-spring-boot-starter-parent
luhan123-redis-cache-expire-spring-boot-starter-parent
master