java / intermediate
Snippet
Deklaratives Methoden-Caching mit @Cacheable
Caching verbessert die Leistung, indem es das Ergebnis teurer Operationen speichert. Wenn @Cacheable verwendet wird, prüft Spring zuerst den Cache; wenn die Daten für den angegebenen Schlüssel existieren, werden sie zurückgegeben, ohne die Methode auszuführen.
snippet.java
1
2
3
4
5
6
7
8
@Servicepublic class PriceService {@Cacheable(value = "prices", key = "#productId")public BigDecimal getLatestPrice(String productId) {// Simulate slow database or API callreturn fetchFromExternalAPI(productId);}}
spring
Erklärung
1
@Cacheable(value = "prices", key = "#productId")
Gibt den Cache-Namen und den SpEL-Ausdruck an, der zur Generierung des eindeutigen Suchschlüssels verwendet wird.
2
return fetchFromExternalAPI(productId)
Dieser Code wird nur ausgeführt, wenn der Cache noch keinen Wert für diese productId enthält.