프로그래밍/프로그래밍팁

LinkedHashMap을 이용한 간단한 Cache 만들기..

조대협 2007. 7. 28. 11:48
 final static int MAX_CACHE_SIZE=20;
 static Map cache
  = new LinkedHashMap(MAX_CACHE_SIZE,0.75f,true){
     private static final long serialVersionUID = 1;
     @Override
     protected boolean removeEldestEntry (Map.Entry eldest) {
             return size() > MAX_CACHE_SIZE;
    }
   };
 private synchronized void putCache(String userId,List <ContactList> list){
  cache.put(userId, list);
 }
 private synchronized List<ContactList> getCache(String userId){
  return (List<ContactList>)cache.get(userId);
 }

생각보다 꽤나 유용하다...