Dire que j'ai 2 méthodes différentes de haricots que je veux mettre en cache par ehcache:Comment mettre en cache 2 méthodes de bean différentes dans la même ehCache?
@Component
public class StatService {
@Cacheable(value = "statCalc")
public int getMeth1(int param) {
// LOGIC1
}
@Cacheable(value = "statCalc")
public int getMeth2(int param) {
// LOGIC2
}
}
Je veux leur résider dans la même cache - ehcache.xml:
<cache name="statCalc"
...
/>
Le problème est que la clé de cache est généré par les paramètres d'entrée et non par la signature de la méthode, ainsi getMeth2 (1) peut retourner la valeur mise en cache par getMeth1 (1).
Quelle est la manière la plus simple de construire une clé en utilisant le nom de la méthode?
P.S. S'il vous plaît, ne mentionnez pas le fait que l'utilisation du même cache pour différentes méthodes pourrait être fausse, juste aider à résoudre ce problème.
Comment la clé est générée? –
@RomanC Par générateur de clé par défaut qui utilise tous les paramètres d'entrée. – corvax