亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

基本對象池的使用

2019-11-18 12:07:00
字體:
來源:轉載
供稿:網友

  /**
  * <p>Title: 基本對象池(org.apache.commons.pool.impl.GenericObjectPool)的使用 </p>
  * <p>Description:
  * 測試 org.apache.commons.pool.impl.GenericObjectPool 和 org.apache.commons.pool.PoolableObjectFactory的使用.</p>
  * <p>基本對象池的使用,
  * <LI>class TestGenericObjectPool 表示一個測試使用對象池的具體例子
  * <LI>class WdzPoolableObjectFactory 表示1個自己定義的生成對象的工廠
  * <LI>class Student 表示 需要使用對象池來維護的類</p>
  * <p>
  * 引用了 common-collcetions-2.1 ,commons-pool-1.1
  * </p>
  * <p>Copyright: Copyright (c) 2004</p>
  * <p>Company: netsky</p>
  * @author wdz( hotmail =wdz123@hotmail.com)
  * @version 1.0
  * @see {@link TestGenericObjectPool},
  * org.apache.commons.pool.impl.GenericObjectPool,org.apache.commons.pool.PoolableObjectFactory
  */
  
  public class Student {
  PRivate String sex;
  private String name;
  private int studentid;
  private int age;
  public Student() {
  }
  
  public static void main(String[] args) {
  Student student1 = new Student();
  
  }
  
  public String getSex() {
  return sex;
  }
  
  public void setSex(String sex) {
  this.sex = sex;
  }
  
  public String getName() {
  return name;
  }
  
  public void setName(String name) {
  this.name = name;
  }
  
  public int getStudentid() {
  return studentid;
  }
  
  public void setStudentid(int studentid) {
  this.studentid = studentid;
  }
  
  public void clear() {
  studentid = 0;
  name = "";
  age = 0;
  sex = "";
  
  }
  
  public int getAge() {
  return age;
  }
  
  public void setAge(int age) {
  this.age = age;
  }
  
  public String toString() {
  return "id =" + studentid + ",name =" + name + ",age=" + age + ",sex=" +
  sex;
  }
  }
  
  Class WdzPoolableObjectFactory --code
  package impl_genericobjectpool_test;
  
  import org.apache.commons.pool.impl.*;
  import org.apache.commons.pool.*;
  
  /**
  * <p>Title: 基本對象池(org.apache.commons.pool.impl.GenericObjectPool)的使用 </p>
  * <p>Description:
  * 測試 org.apache.commons.pool.impl.GenericObjectPool 和 org.apache.commons.pool.PoolableObjectFactory的使用.</p>
  * <p>基本對象池的使用,
  * <LI>class TestGenericObjectPool 表示一個測試使用對象池的具體例子
  * <LI>class WdzPoolableObjectFactory 表示1個自己定義的生成對象的工廠
  * <LI>class Student 表示 需要使用對象池來維護的類</p>
  * <p>
  * 引用了 common-collcetions-2.1 ,commons-pool-1.1
  * </p>
  * <p>Copyright: Copyright (c) 2004</p>
  * <p>Company: netsky</p>
  * @author wdz( hotmail =wdz123@hotmail.com)
  * @version 1.0
  */
  
  
  public class WdzPoolableObjectFactory
  implements PoolableObjectFactory {
  
  /**
  * 創建對象實例。同時可以分配這個對象適用的資源。
  * **/
  public Object makeObject() throws Exception {
  return new Student();
  };
  
  /**
  * 銷毀對象,實際上提供了釋放對象占用資源的接口。
  * destroyObject is invoked on every instance when it is being "dropped"
  * from the pool (whether due to the response from validateObject,
  * or for reasons specific to the pool implementation.)
  * */
  public void destroyObject(Object obj) throws Exception {
  }
  
  /***
  * 這個方法一般在 activateObject 方法執行后調用
  * 檢查對象的有效性
  * validateObject is invoked in an implementation-specific fashion to
  * determine if an instance is still valid to be returned by the pool.
  * It will only be invoked on an "activated" instance.
  * **/
  public boolean validateObject(Object obj) {
  return true;
  }
  
  /**
  * 激活一個對象。
  * activateObject is invoked on every instance before it is returned from the pool.
  * **/
  public void activateObject(Object obj) throws Exception {
  }
  
  /**
  * 掛起一個對象
  * passivateObject is invoked on every instance when it is returned to the pool
  * **/
  public void passivateObject(Object obj) throws Exception {
  if (obj instanceof Student) {
  ( (Student) obj).clear();
  }
  }
  }
  package impl_genericobjectpool_test;
  
  import org.apache.commons.pool.impl.*;
  import org.apache.commons.pool.*;
  
  /**
  * <p>Title: 基本對象池(org.apache.commons.pool.impl.GenericObjectPool)的使用 </p>
  * <p>Description:
  * 測試 org.apache.commons.pool.impl.GenericObjectPool 和 org.apache.commons.pool.PoolableObjectFactory的使用.</p>
  * <p>基本對象池的使用,
  * <LI>class TestGenericObjectPool 表示一個測試使用對象池的具體例子
  * <LI>class WdzPoolableObjectFactory 表示1個自己定義的生成對象的工廠
  * <LI>class Student 表示 需要使用對象池來維護的類</p>
  * <p>
  * 引用了 common-collcetions-2.1 ,commons-pool-1.1
  * </p>
  * <p>Copyright: Copyright (c) 2004</p>
  * <p>Company: netsky</p>
  * @author wdz( hotmail =wdz123@hotmail.com)
  * @version 1.0
  */
  
  public class TestGenericObjectPool {
  private void testBorrowObject(GenericObjectPool pool, int kk) {
  try {
  Student[] student = new Student[10];
  for (int i = 0; i < 10; i++) {
  student[i] = (Student) (pool.borrowObject());
  student[i].setStudentid(i * 10000 + kk);
  student[i].setAge(i * 1000 + kk);
  student[i].setName("wdzname" + i * 100 + kk);
  }
  for (int i = 0; i < 10; i++) {
  System.out.println("student[" + i + "]=" + student[i]);
  pool.returnObject(student[i]);
  if (i == 9) {
  //察看對象回到對象池的狀態
  System.out.println("****student[9]=" + student[9]);
  }
  }
  
  }
  catch (Exception ex) {
  ex.printStackTrace();
  }
  
  }
  
  public TestGenericObjectPool() {
  org.apache.commons.pool.PoolableObjectFactory factory = new
  WdzPoolableObjectFactory();
  GenericObjectPool pool = new GenericObjectPool(factory, 4000 * 10,
  GenericObjectPool.WHEN_EXHAUSTED_GROW, 3000 * 10, true, true);
  System.out.println("group1");
  testBorrowObject(pool, 1);
  System.out.println("group2");
  testBorrowObject(pool, 2);
  
  }
  
  public static void main(String[] args) {
  TestGenericObjectPool test = new TestGenericObjectPool();
  }
  }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品久久国产精品| 国产精品永久免费观看| 国产精品免费久久久久影院| 亚洲美女福利视频网站| 亚洲国产一区二区三区在线观看| 欧美另类在线观看| 亚洲自拍偷拍在线| 欧美电影在线观看高清| 日韩亚洲国产中文字幕| 成人激情视频免费在线| 亚洲国产黄色片| 亚洲国产精彩中文乱码av| 色多多国产成人永久免费网站| 精品亚洲夜色av98在线观看| 性夜试看影院91社区| 亚洲激情小视频| 欧美性xxxx| 亚洲人成网7777777国产| 欧美一区二区影院| 91国在线精品国内播放| 最新中文字幕亚洲| 亚洲另类激情图| 91免费国产网站| 亚洲人成伊人成综合网久久久| 97碰在线观看| 国产精品极品美女在线观看免费| 欧美日韩精品在线播放| 国产欧美一区二区三区四区| 成人在线免费观看视视频| 97成人超碰免| 亚洲人午夜精品免费| 日本亚洲欧美三级| 久久久精品在线| 国产精品视频1区| 亚洲电影免费观看高清完整版在线| 成人网欧美在线视频| 欧美中在线观看| 欧美成人中文字幕在线| 午夜精品免费视频| 亚洲精品欧美日韩专区| 欧美老肥婆性猛交视频| 久久伊人91精品综合网站| 孩xxxx性bbbb欧美| 亚洲美女黄色片| 午夜精品久久17c| 国产成人精品综合久久久| 国产成人精品久久久| 日韩精品免费在线播放| 国产99久久精品一区二区永久免费| 精品亚洲一区二区| 国产精品久久久久久久av电影| 日本91av在线播放| 精品国内自产拍在线观看| 欧美性视频精品| 久久av在线播放| 久久久久久国产三级电影| 人体精品一二三区| 欧美日韩免费一区| 欧美日韩国产页| 国产色婷婷国产综合在线理论片a| 久久久精品视频成人| 国产免费一区二区三区在线能观看| 久久福利视频导航| 精品久久久久久久久久久久| 精品亚洲一区二区三区在线播放| 国产精品青青在线观看爽香蕉| 亚洲精品美女在线| 亚洲精品国精品久久99热| 国产欧美精品在线播放| 亚洲午夜未满十八勿入免费观看全集| 国产欧美日韩精品丝袜高跟鞋| 久久91精品国产91久久久| 欧美精品电影免费在线观看| 亚洲成人久久一区| 国产欧美日韩中文字幕在线| 欧美区在线播放| 少妇高潮久久77777| 在线视频欧美性高潮| 日韩亚洲欧美中文在线| 久久中文字幕在线视频| 欧美日韩美女在线| 色婷婷久久一区二区| 色偷偷偷综合中文字幕;dd| 欧美丝袜第一区| 亚洲精品狠狠操| 亚洲精品wwww| 日韩美女主播视频| 久热精品视频在线观看| 日韩极品精品视频免费观看| 福利视频一区二区| 精品久久久久久久中文字幕| 国产精品久久久久国产a级| 国产色综合天天综合网| 亚洲高清久久久久久| 国产精品久久久久久五月尺| 6080yy精品一区二区三区| 亚洲a中文字幕| 久久久欧美一区二区| 欧美性受xxxx黑人猛交| 国内偷自视频区视频综合| 亚洲人精品午夜在线观看| 国产成人精品优优av| 日本不卡视频在线播放| 亚洲天堂一区二区三区| 亚洲永久免费观看| 高跟丝袜欧美一区| 日韩精品免费在线视频观看| 亚洲人成77777在线观看网| 国产亚洲欧洲在线| 日韩电影在线观看永久视频免费网站| 永久免费看mv网站入口亚洲| 亚洲国产毛片完整版| 亚洲永久在线观看| 韩国精品久久久999| 国产精品久久久91| 亚洲丝袜在线视频| 成人激情黄色网| 欧美日韩亚洲一区二| 国产精品男人的天堂| 欧美疯狂做受xxxx高潮| 久久亚洲精品一区| 8090成年在线看片午夜| 亚洲精品免费在线视频| 91精品视频网站| 亚洲国产成人在线视频| 国产欧美va欧美va香蕉在线| 2018国产精品视频| 欧美另类高清videos| 成人网中文字幕| 亚洲欧美中文日韩在线v日本| 欧美一区二区影院| 亚洲成人久久网| 欧美专区在线观看| 久久激情五月丁香伊人| 国产亚洲精品综合一区91| 亚洲片国产一区一级在线观看| 中文字幕日韩综合av| 国产精品777| 亚洲精品国产成人| 成人激情在线播放| 2019亚洲日韩新视频| 成人精品久久一区二区三区| 国产精品电影网| 尤物九九久久国产精品的特点| 欧美色videos| 亚洲最大成人在线| 夜夜嗨av一区二区三区免费区| 国产精品高清免费在线观看| 欧美精品免费在线观看| 国产精品美女呻吟| 国产午夜精品理论片a级探花| 中文字幕欧美精品日韩中文字幕| 亚洲在线免费看| 国产精品夫妻激情| 91最新在线免费观看| 亚洲视频一区二区三区| 欧美日韩免费区域视频在线观看| 日韩激情视频在线| 亚洲精品国精品久久99热| 亚洲xxxx18| 九色91av视频| 欧美激情视频免费观看| 亚洲在线免费看| 欧美成人精品h版在线观看|