Скажем, у меня есть 2 разных метода bean-компонентов, которые я хочу кэшировать с помощью EhCache:
@Component
public class StatService {
@Cacheable(value = "statCalc")
public int getMeth1(int param) {
// LOGIC1
}
@Cacheable(value = "statCalc")
public int getMeth2(int param) {
// LOGIC2
}
}
Я хочу разместить их в одном кеше - ehcache.xml:
<cache name="statCalc"
...
/>
Проблема в том, что ключ кэша генерируется входными параметрами, а не сигнатурой метода, поэтому getMeth2(1) может возвращать значение, кэшированное getMeth1(1).
Каков самый простой способ создать ключ, используя имя метода?
P.S. Пожалуйста, не упоминайте тот факт, что использование одного и того же кеша для разных методов может быть неправильным, просто помогите решить эту проблему.