Dieser Code ist in Ordnung. Wenn ich jedoch ArrayList<Long>
anstelle von Long[]
als meinen Wert verwenden möchte, stoße ich in ein kleines Problem: Ersetzen Long[].class
mit ArrayList<Long>.class
funktioniert nicht. Ich nehme an, das liegt daran, dass das Vorlagenobjekt dynamisch kompiliert wurde und keine vorhandene .class-Datei hat. Was sollte ich stattdessen verwenden?Wie erstellt Cache mit ArrayList <Long> als Werte mit Ehcache 3?
public class junky{
PersistentCacheManager myStore;
String filename;
Cache<Long, Long[]> myCache;
public junky(String filename){
this.filename = filename;
myStore = CacheManagerBuilder.newCacheManagerBuilder()
.with(CacheManagerBuilder.persistence(this.filename))
.withCache("threeTieredCache",
CacheConfigurationBuilder.newCacheConfigurationBuilder(
Long.class, Long[].class,
ResourcePoolsBuilder.newResourcePoolsBuilder()
.heap(10, EntryUnit.ENTRIES)
.offheap(10, MemoryUnit.GB)
.disk(400, MemoryUnit.GB)
)
).build(true);
myCache = myStore.getCache("myCache", Long.class, Long[].class);
}
}
Vielen Dank. Das hätte ich nie durch Raten und Prüfen herausgefunden: D – BAMF4bacon