Кто-нибудь знает, как работает генерация ключей по умолчанию для Ehcache?Если у меня есть следующий метод:
@Cacheable(cacheName = CACHE_KEY) // CACHE_KEY is static final field.
public List<DataObject> list(
int firstRecord, int maxRecords, int pageSize, FilterObject filter) {
....
}
, где FilterObject
- это пользовательский POJO, что я должен ожидать в качестве фактического ключа кэша?
Я наблюдаю, когда использую разные FilterObject
экземпляры и не изменяю другие аргументы моего вызова метода, он всегда дает один и тот же результат - результат первого вызова кэшируется и возвращается,
Вероятно, именно FilterObject
POJO вызывает поведение - я полагаю, это либо некоторая сериализация, либо проблема .toString()
, потому что я не переопределил соответствующие методы.
Тем не менее мне не удалось найти точную информацию о том, как формируется ключ кэша для такого метода, как на веб-сайте Ehcache, так и в документации по аннотации @Cacheable
.Буду признателен за любую информацию и рекомендации по этой теме.