Posted on 2011-04-22 15:59 
asdtiang 阅读(8002) 
评论(0)  编辑  收藏  
			
			
		 
		boolean isKeyInCache(java.lang.Object key)
- An inexpensive check to see if the key exists in the cache.
 
- 
 
- 
- Parameters:
 key - the key to check for
- Returns:
 - true if an Element matching the key is found in the cache. No assertions are made about the state of the Element.
 
  
这个方法是Ehcache的方法,它只判断key是否存在,并不判断这个缓存元素过期没有,所以当元素加入缓存时key就一直存在,所以就算元素过期,只要key被缓存过一次,这个方法就返回true,
即缓存元素被移除的话,key还存在。
程序就不能用这个方法来判断缓存中是否存在这个某个缓存元素。
 得用如下方法:
getQuiet
Element getQuiet(java.lang.Object key)
throws java.lang.IllegalStateException,
CacheException
- Gets an element from the cache, without updating Element statistics. Cache statistics are also not updated.
 
- 
 
- 
- Parameters:
 key - a serializable value
- Returns:
 - the element, or null, if it does not exist.
 - Throws:
 java.lang.IllegalStateException - if the cache is not Status.STATUS_ALIVE
CacheException
- Since:
 
- 1.2
 
- See Also:
 isExpired(net.sf.ehcache.Element)
  
isExpired
boolean isExpired(Element element)
throws java.lang.IllegalStateException,
java.lang.NullPointerException
- Checks whether this cache element has expired.
The element is expired if:
    - the idle time is non-zero and has elapsed, unless the cache is eternal; or
    
 - the time to live is non-zero and has elapsed, unless the cache is eternal; or
    
 - the value of the element is null. 
 
 
- 
 
- 
- Parameters:
 element - the element to check
- Returns:
 - true if it has expired
 - Throws:
 java.lang.IllegalStateException - if the cache is not Status.STATUS_ALIVE
java.lang.NullPointerException - if the element is null
  
示例代码:
Element element=cache.getQuiet(key);
        log.info("element:"+element);

        if(element!=null)
{
            log.info("cache.isExpired(element):"+cache.isExpired(element));
            log.info("cacheName:" + cacheName + " key:" + key + " isExist:true");
            return true;
        }

        else
{
            log.info("cacheName:" + cacheName + " key:" + key + " isExist:false");
            return false;
        } 
天苍苍,野茫茫,风吹草底见牛羊