2011-01-10 5 views

Antwort

3

SelfPopulatingCache wirkt als eine Umhüllung (oder decorator) um eine andere Instanz von EhCache. Wenn Sie SelfPopulatingCache nach einem zwischengespeicherten Wert fragen und dieser Wert nicht im zugrunde liegenden Cache liegt, erstellt der SelfPopulatingCache den Wert für Sie. Es tut dies mit der CacheEntryFactory, die Sie auch bereitstellen.

So ein SelfPopulatingCache zu erstellen, benötigen Sie:

  • Eine Instanz EhCache, die Sie aus dem ChacheManager
  • eine Instanz von CacheEntryFactory holen, die Sie selbst schreiben.

Übergeben Sie beide an den Konstruktor von SelfPopulatingCache, und da sind Sie.

+0

Hallo vielen Dank für Ihre Antwort, ich bin die Konfiguration ehcaceh mit von xml file.I der Lage, alle th ehcahces in meinem Servlet zu holen, hier möchte ich SelfPopulatingCache verwenden, um den Cache mit einer gewissen Zeit zu aktualisieren, zu tun, wie das ? – rajputhch

0
SelfPopulatingCache cacheStatus = new SelfPopulatingCache(ehcache, new CacheEntryFactory() { 
     @Override 
     public Object createEntry(Object key) throws Exception { 
      if (key.toString().equals(FLAG1)) { 
       return true; 
      } else if (key.toString().equals(FLAG2)) { 
       return false; 
      } 
      return null; 
     } 
    });