Мы используем кеширование методом springmodules (Spring 2.0.7) в сочетании с ehcache для кэширования данных, которые часто запрашиваются, чтобы загрузить нагрузку из базы данных.Как аннулировать одну запись из кеша метода springmodules?
E.g. мы кэшируем результат метода public Profile getUserProfile(User u) {...}
: когда пользователь обновляет данные в своем собственном профиле, было бы неплохо сделать недействительным кэшированный Profile
только для этого одиночного User
непосредственно после обновления, чтобы изменения сразу отражались в пользовательском интерфейсе ,
Есть ли способ достичь этого без аннулирования полного кеша для этого метода?
Или есть лучший вариант, чем springmodules-кеширование для этого прецедента?
Большое спасибо за любые подсказки.
Спасибо за указание мне Spring 3.1, выглядит как аккуратный способ добиться того, чего я хочу. То, о чем я не упоминал (извините, просто добавил эту информацию), является то, что я работаю над довольно большим проектом с использованием Spring 2.0.7. Модернизация проекта до весны 3.1, безусловно, потребует большой работы. Поэтому, если есть какое-либо другое хорошее решение (не обязательно весеннее решение), я бы предпочел этот ... – peterp
@peterp: извините, я не знаю об этом весной 2.0.7 и springmodules-caching – Ralph
Принимая это как есть лучший ответ, еще не нашли другого решения. Спасибо Ральфу – peterp