Какие существуют стратегии использования Spring Cache для методов, которые принимают параметр массива или коллекции?
Я хочу использовать абстракцию Spring Cache для аннотирования методов как @Cacheable. Однако некоторые методы предназначены для получения массива или набора параметров и возврата коллекции. Например, рассмотрим этот метод, чтобы найти энтиты:
public Collection<Entity> getEntities(Collection<Long> ids)
Семантически мне нужно кешироватьEntity
объекты индивидуально (с идентификатором), не основанные на совокупности идентификаторов в целом. Похоже на то, чтоэтот вопрос спрашивает о.
Простая пружина Memcached поддерживает то, что я хочу, через егоReadThroughMultiCache
, но я хочу использовать абстракцию Spring для поддержки простого изменения реализации хранилища кеша (Guava, Coherence, Hazelcast и т. д.), а не только memcached.
Какие существуют стратегии для кэширования такого метода с использованием Spring Cache?