2016-04-07 13 views
0

Ich arbeite an einer Federanwendung, die mongno db verwendet. Es gibt einige Referenzdaten in der Anwendung und ich denke, das System würde sich schneller verhalten, wenn wir diese Daten zwischenspeichern (anstatt sie jedes Mal nachzuschlagen).Referenzdaten im Anwendungsspeicher behalten (Feder MongoRepository)

Wie kann ich das erreichen? Beispiel für einen Datendatentabelle ref, die unten betroffen sein würden:

public interface ApplicationDetailsRepository extends MongoRepository<ApplicationDetails, String> { 
    ApplicationDetails findByApplication(String application); 
} 

Antwort

0

die Anmerkung @EnableCaching scheint Hinzufügen gut

@Bean 
    public CacheManager cacheManager() { 
     SimpleCacheManager cacheManager = new SimpleCacheManager(); 
     cacheManager.setCaches(Arrays.asList(new ConcurrentMapCache("applicationdetails"))); 
     return cacheManager; 
    } 

dann Repository-Methode mit Anmerkungen versehen wie folgt Sie hinzufügen So @EnableCaching Ihrer Anwendung Config

Einzelheiten here

zu arbeiten:

public interface ApplicationDetailsRepository extends MongoRepository<ApplicationDetails, String> { 
    @Cacheable("applicationdetails") 
    ApplicationDetails findByApplication(String application); 
} 
0

Sie könnten eine eigene Implementierung der findByApplication Methode hinzufügen, wie hier beschrieben: spring doc

Zusätzlich erhalten Sie ein Feld verwenden, um Ihre „Cache“ zu speichern, Werte, anstatt sie jedes Mal aus Ihrer Datenbank abzurufen.

Verwandte Themen