当前位置: 首页>>代码示例>>Java>>正文


Java CacheConfiguration.setOverflowToDisk方法代码示例

本文整理汇总了Java中net.sf.ehcache.config.CacheConfiguration.setOverflowToDisk方法的典型用法代码示例。如果您正苦于以下问题:Java CacheConfiguration.setOverflowToDisk方法的具体用法?Java CacheConfiguration.setOverflowToDisk怎么用?Java CacheConfiguration.setOverflowToDisk使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.sf.ehcache.config.CacheConfiguration的用法示例。


在下文中一共展示了CacheConfiguration.setOverflowToDisk方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getCacheManager

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
private CacheManager getCacheManager() {
	if (manager == null) {
		Configuration config = new Configuration();
		CacheConfiguration cacheconfig = new CacheConfiguration(getName(), maxElementsInMemory);
		cacheconfig.setDiskExpiryThreadIntervalSeconds(diskExpiryThreadIntervalSeconds);
		cacheconfig.setDiskPersistent(diskPersistent);
		cacheconfig.setEternal(eternal);
		cacheconfig.setMaxElementsOnDisk(maxElementsOnDisk);
		cacheconfig.setMemoryStoreEvictionPolicyFromObject(memoryStoreEvictionPolicy);
		cacheconfig.setOverflowToDisk(overflowToDisk);
		cacheconfig.setTimeToIdleSeconds(timeToIdleSeconds);
		cacheconfig.setTimeToLiveSeconds(timeToLiveSeconds);

		DiskStoreConfiguration diskStoreConfigurationParameter = new DiskStoreConfiguration();
		diskStoreConfigurationParameter.setPath(getPath().getAbsolutePath());
		config.addDiskStore(diskStoreConfigurationParameter);
		config.setDefaultCacheConfiguration(cacheconfig);
		manager = new CacheManager(config);
	}
	return manager;
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:22,代码来源:EhcacheMap.java

示例2: getCacheConfiguration

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
/**
 * Read cache config from the file caches.dat
 *
 * @param strCacheName
 *            The cache name
 * @return The config
 */
private CacheConfiguration getCacheConfiguration( String strCacheName )
{
    CacheConfiguration config = new CacheConfiguration( );
    config.setName( strCacheName );
    config.setMaxElementsInMemory( getIntProperty( strCacheName, PROPERTY_MAX_ELEMENTS, _nDefaultMaxElementsInMemory ) );
    config.setEternal( getBooleanProperty( strCacheName, PROPERTY_ETERNAL, _bDefaultEternal ) );
    config.setTimeToIdleSeconds( getLongProperty( strCacheName, PROPERTY_TIME_TO_IDLE, _lDefaultTimeToIdle ) );
    config.setTimeToLiveSeconds( getLongProperty( strCacheName, PROPERTY_TIME_TO_LIVE, _lDefaultTimeToLive ) );
    config.setOverflowToDisk( getBooleanProperty( strCacheName, PROPERTY_OVERFLOW_TO_DISK, _bDefaultOverflowToDisk ) );
    config.setDiskPersistent( getBooleanProperty( strCacheName, PROPERTY_DISK_PERSISTENT, _bDefaultDiskPersistent ) );
    config.setDiskExpiryThreadIntervalSeconds( getLongProperty( strCacheName, PROPERTY_DISK_EXPIRY, _lDefaultDiskExpiry ) );
    config.setMaxElementsOnDisk( getIntProperty( strCacheName, PROPERTY_MAX_ELEMENTS_DISK, _nDefaultMaxElementsOnDisk ) );
    config.setStatistics( getBooleanProperty( strCacheName, PROPERTY_STATISTICS, _bDefaultStatistics ) );

    return config;
}
 
开发者ID:lutece-platform,项目名称:lutece-core,代码行数:24,代码来源:CacheService.java

示例3: afterPropertiesSet

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
@SuppressWarnings("deprecation")
@Override
public void afterPropertiesSet() throws Exception {
    Cache.ID = key + "." + Dates.newDateStringOfFormatDateTimeSSSNoneSpace();
    Cache.HOST = Utils.getLocalHostIP();
    Cache.CACHE_STORE = key + spliter + "cache" + spliter + "store";
    Cache.CACHE_STORE_SYNC = Cache.CACHE_STORE + spliter + "sync";
    if (this.localEnabled) {
        Configuration configuration = new Configuration();
        configuration.setName(Cache.ID);
        configuration.setMaxBytesLocalHeap(localMaxBytesLocalHeap);
        configuration.setMaxBytesLocalDisk(localMaxBytesLocalDisk);
        // DiskStore
        // 每次启动设置新的文件地址,以避免重启期间一级缓存未同步,以及单机多应用启动造成EhcacheManager重复的问题.
        DiskStoreConfiguration dsc = new DiskStoreConfiguration();
        dsc.setPath(localStoreLocation + Cache.ID);
        configuration.diskStore(dsc);
        // DefaultCache
        CacheConfiguration defaultCacheConfiguration = new CacheConfiguration();
        defaultCacheConfiguration.setEternal(false);
        defaultCacheConfiguration.setOverflowToDisk(true);
        defaultCacheConfiguration.setDiskPersistent(false);
        defaultCacheConfiguration.memoryStoreEvictionPolicy(MemoryStoreEvictionPolicy.LRU);
        defaultCacheConfiguration.setDiskExpiryThreadIntervalSeconds(localDiskExpiryThreadIntervalSeconds);
        // 默认false,使用引用.设置为true,避免外部代码修改了缓存对象.造成EhCache的缓存对象也随之改变
        // 但是设置为true后,将引起element的tti不自动刷新.如果直接新建element去覆盖原值.则本地ttl和远程ttl会产生一定的误差.
        // 因此,使用时放弃手动覆盖方式刷新本地tti,当本地tti过期后,自动从Redis中再获取即可.
        defaultCacheConfiguration.copyOnRead(true);
        defaultCacheConfiguration.copyOnWrite(true);
        defaultCacheConfiguration.setTimeToIdleSeconds(localTimeToIdleSeconds);
        defaultCacheConfiguration.setTimeToLiveSeconds(localTimeToLiveSeconds);
        configuration.setDefaultCacheConfiguration(defaultCacheConfiguration);
        configuration.setDynamicConfig(false);
        configuration.setUpdateCheck(false);
        this.cacheManager = new CacheManager(configuration);
        this.cacheSync = new RedisPubSubSync(this);// 使用Redis Topic发送订阅缓存变更消息
    }
}
 
开发者ID:yrain,项目名称:smart-cache,代码行数:39,代码来源:CacheTemplate.java

示例4: ehCacheManager

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
/**
	 * Eh cache manager.
	 *
	 * @return the net.sf.ehcache. cache manager
	 */
	@SuppressWarnings("deprecation")
	@Bean(destroyMethod="shutdown")
    public net.sf.ehcache.CacheManager ehCacheManager() {
        CacheConfiguration cacheConfiguration = new CacheConfiguration();
        cacheConfiguration.setMemoryStoreEvictionPolicy("LRU");
        cacheConfiguration.setMaxEntriesLocalHeap(1000);
        cacheConfiguration.setEternal(false);
        cacheConfiguration.setOverflowToDisk(true);
        cacheConfiguration.setMaxElementsInMemory(1000);
        cacheConfiguration.setMaxElementsOnDisk(10000);
//        cacheConfiguration.setDiskPersistent(false);
//        cacheConfiguration.setStatistics(false);
        cacheConfiguration.setTimeToIdleSeconds(300);
        cacheConfiguration.setTimeToLiveSeconds(600);

        net.sf.ehcache.config.Configuration config = new net.sf.ehcache.config.Configuration();
        DiskStoreConfiguration diskStoreConfiguration = new DiskStoreConfiguration();
        diskStoreConfiguration.setPath(System.getProperty("java.io.tmpdir"));
        config.diskStore(diskStoreConfiguration);
        config.setDynamicConfig(true);
        config.setMonitoring("autodetect");
        config.setUpdateCheck(false);
        config.defaultCache(cacheConfiguration);
        
    	CacheSettings.Items.list.parallelStream().forEach(it -> {
    		config.addCache(loadCache(it));
    	});

        return net.sf.ehcache.CacheManager.newInstance(config);
    }
 
开发者ID:gleb619,项目名称:hotel_shop,代码行数:36,代码来源:CacheConfig.java

示例5: cacheConfiguration

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
private CacheConfiguration cacheConfiguration(String name) {
    CacheConfiguration cc = new CacheConfiguration();

    cc.setMaxEntriesLocalHeap(size);
    cc.setOverflowToDisk(false);
    cc.setEternal(true);
    cc.setName(DocumentLoaderCachingProxy.class.getCanonicalName() + "." + name);

    return cc;
}
 
开发者ID:imCodePartnerAB,项目名称:imcms,代码行数:11,代码来源:DocumentLoaderCachingProxy.java

示例6: build

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
@Override
public Cache<K, V> build(String name) {
    this.name = name;

    net.sf.ehcache.CacheManager cm = net.sf.ehcache.CacheManager.getInstance();

    net.sf.ehcache.Cache c = new net.sf.ehcache.Cache(name, 10000, false, false, 600, 0);
    CacheConfiguration configuration = c.getCacheConfiguration();
    configuration.setOverflowToDisk(false);

    cm.addCacheIfAbsent(c);

    ehcache = cm.getCache(name);

    return this;
}
 
开发者ID:geetools,项目名称:geeCommerce-Java-Shop-Software-and-PIM,代码行数:17,代码来源:Ehcache.java

示例7: overrideCacheConfiguration

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
protected void overrideCacheConfiguration(Properties properties, CacheConfiguration cacheConfig, String cacheName) {
	String cachePrefix = NET_SF_EHCACHE_REGION_PREFIX + cacheName + ".";

	if(properties.get(cachePrefix + "maxElementsInMemory") != null) {
		int maxElementsInMemory = Integer.parseInt((String)properties.get(cachePrefix + "maxElementsInMemory"));
		cacheConfig.setMaxElementsInMemory(maxElementsInMemory);
	}

	if(properties.get(cachePrefix + "eternal") != null) {
		boolean eternal = Boolean.parseBoolean((String)properties.get(cachePrefix + "eternal"));
		cacheConfig.setEternal(eternal);
	}

	if(properties.get(cachePrefix + "timeToIdleSeconds") != null) {
		long timeToIdleSeconds = Long.parseLong((String)properties.get(cachePrefix + "timeToIdleSeconds"));
		cacheConfig.setTimeToIdleSeconds(timeToIdleSeconds);
	}

	if(properties.get(cachePrefix + "timeToLiveSeconds") != null) {
		long timeToLiveSeconds = Long.parseLong((String)properties.get(cachePrefix + "timeToLiveSeconds"));
		cacheConfig.setTimeToLiveSeconds(timeToLiveSeconds);
	}

	if(properties.get(cachePrefix + "overflowToDisk") != null) {
		boolean overflowToDisk = Boolean.parseBoolean((String)properties.get(cachePrefix + "overflowToDisk"));
		cacheConfig.setOverflowToDisk(overflowToDisk);
	}

	if(properties.get(cachePrefix + "maxElementsOnDisk") != null){
		int maxElementsOnDisk = Integer.parseInt((String)properties.get(cachePrefix + "maxElementsOnDisk"));
		cacheConfig.setMaxElementsOnDisk(maxElementsOnDisk);
	}

	if(properties.get(cachePrefix + "diskPersistent") != null){
		boolean diskPersistent = Boolean.parseBoolean((String)properties.get(cachePrefix + "diskPersistent"));
		cacheConfig.setDiskPersistent(diskPersistent);
	}

	if(properties.get(cachePrefix + "diskExpiryThreadIntervalSeconds") != null) {
		long diskExpiryThreadIntervalSeconds = Long.parseLong((String)properties.get(cachePrefix + "diskExpiryThreadIntervalSeconds"));
		cacheConfig.setDiskExpiryThreadIntervalSeconds(diskExpiryThreadIntervalSeconds);
	}

	if(properties.get(cachePrefix + "diskExpiryThreadIntervalSeconds") != null) {
		String memoryStoreEvictionPolicy = (String) properties.get(cachePrefix + "memoryStoreEvictionPolicy");
		cacheConfig.setMemoryStoreEvictionPolicy(memoryStoreEvictionPolicy);
	}
}
 
开发者ID:webdsl,项目名称:webdsl,代码行数:49,代码来源:EhCacheRegionFactory.java

示例8: initCache

import net.sf.ehcache.config.CacheConfiguration; //导入方法依赖的package包/类
/**
 * 
 * 初始化缓存
 * 
 * @param cacheName
 *            缓存名称
 * 
 * @param maxElementsInMemory
 *            元素最大数量
 * 
 * @param overflowToDisk
 *            是否持久化到硬盘
 * 
 * @param eternal
 *            是否会死亡
 * 
 * @param timeToLiveSeconds
 *            缓存存活时间
 * 
 * @param timeToIdleSeconds
 *            缓存的间隔时间
 * 
 * @return缓存
 * 
 * @throws Exception
 *             异常
 */

public static Cache initCache(String cacheName, int maxElementsInMemory,

boolean overflowToDisk, boolean eternal, long timeToLiveSeconds,

long timeToIdleSeconds) throws Exception {

	try {

		CacheManager singletonManager = CacheManager.create();

		Cache myCache = singletonManager.getCache(cacheName);

		if (myCache != null) {

			CacheConfiguration config = cache.getCacheConfiguration();

			config.setTimeToLiveSeconds(timeToLiveSeconds);

			config.setMaxElementsInMemory(maxElementsInMemory);

			config.setOverflowToDisk(overflowToDisk);

			config.setEternal(eternal);

			config.setTimeToLiveSeconds(timeToLiveSeconds);

			config.setTimeToIdleSeconds(timeToIdleSeconds);

		}

		if (myCache == null) {

			Cache memoryOnlyCache = new Cache(cacheName, maxElementsInMemory, overflowToDisk,

			eternal, timeToLiveSeconds, timeToIdleSeconds);

			singletonManager.addCache(memoryOnlyCache);

			myCache = singletonManager.getCache(cacheName);

		}

		return myCache;

	} catch (Exception e) {

		e.printStackTrace();

		throw new Exception("init cache " + cacheName + " failed!!!");

	}

}
 
开发者ID:dreajay,项目名称:jcode,代码行数:82,代码来源:EHCacheUtils.java


注:本文中的net.sf.ehcache.config.CacheConfiguration.setOverflowToDisk方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。