黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Guava教程

Guava緩存工具

Guava通過接口LoadingCache提供了一個非常強大的基于內存的LoadingCache<K,V>。在緩存中自動加載值,它提供了許多實用的方法,在有緩存需求時非常有用。

接口聲明

以下是forcom.google.common.cache.LoadingCache<K,V>接口的聲明:

@Beta
@GwtCompatible
public interface LoadingCache<K,V>
? ?extends Cache<K,V>, Function<K,V>

接口方法

LoadingCache 示例

使用所選擇的編輯器創建下面的java程序 C:/> Guava

GuavaTester.java

import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;

import com.google.common.base.MoreObjects;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;

public class GuavaTester {
   public static void main(String args[]){
      //create a cache for employees based on their employee id
      LoadingCache employeeCache = 
         CacheBuilder.newBuilder()
            .maximumSize(100) // maximum 100 records can be cached
            .expireAfterAccess(30, TimeUnit.MINUTES) // cache will expire after 30 minutes of access
            .build(new CacheLoader(){ // build the cacheloader
               @Override
               public Employee load(String empId) throws Exception {
                  //make the expensive call
                  return getFromDatabase(empId);
               }							
            });

      try {			
         //on first invocation, cache will be populated with corresponding
         //employee record
         System.out.println("Invocation #1");
         System.out.println(employeeCache.get("100"));
         System.out.println(employeeCache.get("103"));
         System.out.println(employeeCache.get("110"));
         //second invocation, data will be returned from cache
         System.out.println("Invocation #2");
         System.out.println(employeeCache.get("100"));
         System.out.println(employeeCache.get("103"));
         System.out.println(employeeCache.get("110"));

      } catch (ExecutionException e) {
         e.printStackTrace();
      }
   }

   private static Employee getFromDatabase(String empId){
      Employee e1 = new Employee("Mahesh", "Finance", "100");
      Employee e2 = new Employee("Rohan", "IT", "103");
      Employee e3 = new Employee("Sohan", "Admin", "110");

      Map database = new HashMap();
      database.put("100", e1);
      database.put("103", e2);
      database.put("110", e3);
      System.out.println("Database hit for" + empId);
      return database.get(empId);		
   }
}

class Employee {
   String name;
   String dept;
   String emplD;

   public Employee(String name, String dept, String empID){
      this.name = name;
      this.dept = dept;
      this.emplD = empID;
   }
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public String getDept() {
      return dept;
   }
   public void setDept(String dept) {
      this.dept = dept;
   }
   public String getEmplD() {
      return emplD;
   }
   public void setEmplD(String emplD) {
      this.emplD = emplD;
   }

   @Override
   public String toString() {
      return MoreObjects.toStringHelper(Employee.class)
      .add("Name", name)
      .add("Department", dept)
      .add("Emp Id", emplD).toString();
   }	
}原文出自【易百教程】,商業轉載請聯系作者獲得授權,非商業請保留原文鏈接:https://www.yiibai.com/guava/guava_caching_utilities.html

驗證結果

使用javac編譯器如下編譯類

C:\Guava>javac GuavaTester.java

現在運行GuavaTester看到的結果

C:\Guava>java GuavaTester

看看結果

Invocation #1
Database hit for100
Employee{Name=Mahesh, Department=Finance, Emp Id=100}
Database hit for103
Employee{Name=Rohan, Department=IT, Emp Id=103}
Database hit for110
Employee{Name=Sohan, Department=Admin, Emp Id=110}
Invocation #2
Employee{Name=Mahesh, Department=Finance, Emp Id=100}
Employee{Name=Rohan, Department=IT, Emp Id=103}
Employee{Name=Sohan, Department=Admin, Emp Id=110}

 

 

 

 

轉載自并發編程網-ifeve.com

全部教程
主站蜘蛛池模板: h在线免费视频 | 成人在线观看免费视频 | 99v视频国产在线观看免费 | 韩国久播影院理论片不卡影院 | 日本高清精品 | 久视频在线观看久视频 | a级日本片在线观看 | 2019天天操天天干天天透 | 欧美日韩国产成人综合在线影院 | 欧美成人观看免费完全 | 日韩伦理在线免费观看 | 精品国产无限资源免费观看 | 成人免费观看视频久爱网 | 深夜在线视频免费网址 | 成人欧美网站免费 | 国产日本三级欧美三级妇三级四 | 性猛交╳xxx乱大交 性美国xxxxx免费 | 欧美精品系列 | 夜夜爽一区二区三区精品 | 性欧美极品 | 极品福利在线 | 伊人天堂网 | 久久久午夜精品理论片 | 青青青亚洲精品国产 | 成人免费在线网站 | 日韩精品视频福利资源站 | 99re在线| 在线亚洲日产一区二区 | 亚洲首页成人有声小说网 | 国产人碰人摸人爱免费视频 | 华人欧美国产在线精品 | 日韩精品一区二区三区中文 | 91精彩视频 | 日韩视频第二页 | 91精品国产品国语在线不卡 | 久久久这里只有免费精品2018 | 午夜性刺激在线观看视频 | 在线一区三区四区产品动漫 | 亚洲一区二区成人 | 午夜剧场在线免费观看 | 黄色a一级 |