這篇文章主要介紹“如何使用Ehcache”,在日常操作中,相信很多人在如何使用Ehcache問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何使用Ehcache”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
目前創(chuàng)新互聯(lián)建站已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計、萊蕪網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
EhCache 是一個純Java的進(jìn)程內(nèi)緩存框架,具有快速、精干等特點(diǎn),是Hibernate中默認(rèn)的CacheProvider。
/** * 等價于 ** * @author luther * @time 2019年7月12日 上午10:33:22 */ @Test public void testHelloWorld() { CacheConfigurationjava.lang.Long *java.lang.String ** *200 *cacheConfiguration = CacheConfigurationBuilder .newCacheConfigurationBuilder(long.class, String.class, ResourcePoolsBuilder.heap(100)).build(); CacheManagerBuilder cacheManagerBuilder = CacheManagerBuilder.newCacheManagerBuilder(); // 將CacheManager名定義為preConfigured cacheManagerBuilder.withCache("preConfigured", cacheConfiguration); // 創(chuàng)建CacheManager實(shí)例 CacheManager cacheManager = cacheManagerBuilder.build(); // 初始化CacheManager實(shí)例 cacheManager.init(); // 在CacheManager中創(chuàng)建名為myCache的緩存對象 Cache myCache = cacheManager.createCache("myCache", CacheConfigurationBuilder .newCacheConfigurationBuilder(Long.class, String.class, ResourcePoolsBuilder.heap(1)).build()); // 往myCache緩存中放入鍵為1L,值為da one!的條目 myCache.put(1L, "da one!"); // 通過鍵獲取值 String value = myCache.get(1L); // 展示值 System.out.println(value); // 移除preConfigured緩存管理器 cacheManager.removeCache("preConfigured"); // 關(guān)閉緩存 cacheManager.close(); }
/** * 演示加載xml配置 * @author luther * @time 2019年7月12日 上午10:57:27 */ @Test public void testXml() { XmlConfiguration xmlConfig = new XmlConfiguration(Thread.currentThread() .getContextClassLoader().getResource("ehcache3.xml")); CacheManager cacheManager = CacheManagerBuilder.newCacheManager(xmlConfig); cacheManager.init(); // 在CacheManager中創(chuàng)建名為myCache的緩存對象 CachemyCache = cacheManager.createCache("myCache", CacheConfigurationBuilder .newCacheConfigurationBuilder(Long.class, String.class, ResourcePoolsBuilder.heap(1)).build()); // 往myCache緩存中放入鍵為1L,值為da one!的條目 myCache.put(1L, "da one!"); // 通過鍵獲取值 String value = myCache.get(1L); // 展示值 System.out.println(value); // 移除preConfigured緩存管理器 cacheManager.removeCache("preConfigured"); // 關(guān)閉緩存 cacheManager.close(); }
配置文件如下:
java.lang.Long java.lang.String 200
EhCache分2和3版本,而2版本和3版本的XML配置文件有所出入。
其中2版本的配置如下:
diskExpiryThreadIntervalSeconds="120" eternal="false" maxEntriesLocalDisk="0" maxEntriesLocalHeap="0" memoryStoreEvictionPolicy="LRU" timeToIdleSeconds="3600" timeToLiveSeconds="0" overflowToDisk="false" copyOnRead="true" copyOnWrite="true" statistics="true">
如果覺的不夠詳細(xì),可以參考官方給的2版本的XML詳解
3版本為:
java.lang.String java.lang.String com.luther.expiryPolicy.MyExpiryPolicy 3600 0 20 200
到此,關(guān)于“如何使用Ehcache”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!