Ehcache 入门

Ehcache

EhCache JavaHibernateCacheProviderEhcache广使 Java,Java EE,gzipservletRESTSOAP api

Ehcache 

  1. RMIAPI
  2. Hibernate

Ehcache Spring 

pom.xml jar

       <dependency>
           <groupId>net.sf.ehcache</groupId>
           <artifactId>ehcache</artifactId>
           <version>2.8.2</version>
       </dependency>

ehcache.xml Ehcache

<?xml version="1.0" encoding="UTF-8"?>
     <ehcache>
         <diskStore path="java.io.tmpdir"/>
         <defaultCache
                 maxElementsInMemory="1000"
                 eternal="false"
                 timeToIdleSeconds="120"
                 timeToLiveSeconds="120"
                 overflowToDisk="false"/>
         <cache name="bankCache"
                maxElementsOnDisk="20000"
                maxElementsInMemory="2000"
                eternal="true"
                overflowToDisk="true"
                diskPersistent="true"/>
     
     </ehcache>

Ehcache

diskStore:maxElementsInMemory,()

diskStore path:使,Ehcache使*.data *.index

name:,cache(ehcachecacheHashMap)

maxElementsOnDisk:,0

maxElementsInMemory:,Cache,

  1. overflowToDisk=true,Cache
  2. overflowToDisk=false,memoryStoreEvictionPolicyCache

eternal:,,truetimeToIdleSecondstimeToLiveSeconds

timeToIdleSeconds:(:),eternal=false使,0, 访cache,访Cache,Cache

timeToLiveSeconds:(:),eternal=false使,0 Cache,,,Cache

overflowToDisk:,(maxElementsInMemory,Ehcache) path,path,cache,data

diskPersistent:,true,cache,index cacheindex,cache cache,net.sf.ehcache.Cache.put(Element element)flush()

diskExpiryThreadIntervalSeconds:线,120

diskSpoolBufferSizeMB:DiskStore,30MB

memoryStoreEvictionPolicy:,maxElementsInMemory,Ehcache ,LRU(使)LFU()FIFO()

springcontext.xml spring 

   <!--  -->
    <cache:annotation-driven cache-manager="cacheManager"/>
   <!-- ehcachecacheManager -->
    <bean id="cacheManagerFactory" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
        <property name="configLocation" value="classpath:ehcache.xml"/>
    </bean>
    <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager">
        <property name="cacheManager" ref="cacheManagerFactory"/>
    </bean>

使

 @Cacheable(value = "bankCache", key = "#bankNo+'_'+#provinceCode+'_'+#cityno+'_'+#bankBranchName")    public List<Map<String, ?>> getBankBranchList(String bankNo, String provinceCode, String cityno, String bankBranchName) {            return bankLimitDao.getBankBranchList(bankNo, provinceCode, cityno, bankBranchName);
    }

发表评论

邮箱地址不会被公开。