熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java高級技術 >> 正文

Java程序性能優化-享元模式(2)[2]

2013-11-23 20:01:09  來源: Java高級技術 

  public class ReportManagerFactory {

  Map<String IReportManager> financialReportManager=

  new HashMap<String IReportManager>()

  Map<String IReportManager> employeeReportManager=

  new HashMap<String IReportManager>()

  IReportManager getFinancialReportManager(String tenantId){

  //通過租戶ID

  //獲取享元

  IReportManager r=financialReportManagerget(tenantId)

  if(r==null){

  r=new FinancialReportManager(tenantId)

  financialReportManagerput(tenantId r)        //維護已創建的

  //享元對象

  }

  return r;

  }

  IReportManager getEmployeeReportReportManager(String tenantId){

  //通過租戶ID

  //獲取享元

  IReportManager r=employeeReportManagerget(tenantId)

  if(r==null){

  r=new EmployeeReportManager(tenantId)

  employeeReportManagerput(tenantId r)         //維護已創建的

  //享元對象

  }

  return r;

  }

  }

  使用享元模式的方法如下

  public static void main(String[] args) {

  ReportManagerFactory rmf=new ReportManagerFactory()

  IReportManager rm=rmfgetFinancialReportManager(A

  Systemoutprintln(rmcreateReport())

  }

  ReportManagerFactory作為享元工廠以租客的ID為索引維護了一個享元對象的集合它確保相同租客的請求都返回同一個享元實例確保享元對象的有效復用

       返回目錄Java程序性能優化讓你的Java程序更快更穩定

  編輯推薦

       Java程序設計培訓視頻教程

       JEE高級框架實戰培訓視頻教程

       JME移動開發實戰教學視頻

  Visual C++音頻/視頻技術開發與實戰

  Oracle索引技術

  ORACLEG數據庫開發優化指南

[]  []  


From:http://tw.wingwit.com/Article/program/Java/gj/201311/27826.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.