亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? util.java

?? java 小型系統連接池參照適用于中小型網站
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package ntis.com.util;

import java.io.*;
import java.util.*;
import java.rmi.Naming;
import java.rmi.RemoteException;
import java.sql.*;
import ntis.com.base.RmiServer;
import ntis.com.util.*;

/**<p>
*奺庬嫟捠婡擻傪採嫙偡傞儐乕僥傿儕僥傿僋儔僗丅埲壓偺婡擻傪幚憰偟丄懠偺僋儔僗偵採嫙偡傞丅<br>
*丒弶婜壔僨乕僞僼傽僀儖偐傜偺僉乕抣専嶕<br>
*丒僨乕僞儀乕僗僐僱僋僔儑儞偺妋曐/夝曻<br>
*丒儘僌婰榐僣乕儖傊偺儊僢僙乕僕憲怣<br>
*</p><p>
*Singleton僷僞乕儞偺揔梡偵傛傝丄Util偺僀儞僗僞儞僗偼傾僾儕働乕僔儑儞拞偵堦偮偺傒偱偁傝丄
*偦偺偙偲偵傛偭偰儕僜乕僗偺堦尦娗棟偑払惉偝傟傞丅偦偺懚嵼偑堦偮偺傒偱偁傞偙偲傪曐徹偡傞堊偵丄
*Util偺僐儞僗僩儔僋僞偼private愰尵偝傟偰偍傝丄棙梡幰懁偱僀儞僗僞儞僗傪惗惉偡傞偙偲偼偱偒側偄丅
*Util偱掕媊偝傟偨婡擻傪巊梡偡傞応崌偵偼丄埲壓偺曽朄偱僀儞僗僞儞僗傪庢摼偡傞昁梫偑偁傞丅
*</p><p>
*<b>僀儞僗僞儞僗庢摼偺椺</b>:
*<pre>
*  Util util = Util.create();
*  util.儊僜僢僪柤();
*</pre>
*</p><p>
*create()偼Util偺僀儞僗僞儞僗偑傑偩懚嵼偟側偗傟偽怴偨偵惗惉偟偨僀儞僗僞儞僗傪屇傃弌偟尦偵曉偡丅
*婛偵僀儞僗僞儞僗偑懚嵼偡傞応崌偵偼惗惉偼峴傢偢丄尒偮偐偭偨僀儞僗僞儞僗傪曉偡丅
*</p>*/
public class Util {
  /**<p>
  *弶婜壔僼傽僀儖偺柤徧丅<BR>
  *僨傿僼僅儖僩偺弶婜壔僼傽僀儖偺柤徧傪曐帩偡傞僼傿乕儖僪丅
  *getInitParam()儊僜僢僪偺屇傃弌偟帪偵僼傽僀儖柤偲偟偰偙偺抣傪巜掕偡傞偲丄
  *僨傿僼僅儖僩弶婜壔僼傽僀儖偐傜僉乕偑専嶕偝傟傞丅
  *徻嵶偼getInitParam()儊僜僢僪偺愢柧傪嶲徠偺偙偲丅
  *</p>*/
  public static String DEFAULT_INIT_DATA = "DefaultInitData.txt";
  public static String INIT_DATA         = "InitData.txt";

  private static Hashtable initDataFiles = new Hashtable();

  private static Util util = null;
//private LogRecorder logRecorder = null;
  private RmiServer logRecorder = null;
  private int messageLevel = 0;
  private ConnectionData[] connectionDatas = {
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData(),
    new ConnectionData()
  };
  private int connectionCount = 0;

  private Util() {}

  private void init() {
    try {
      messageLevel = Integer.parseInt(Util.getInitParam(Util.DEFAULT_INIT_DATA, "MessageLevel"));
      String _serverName = Util.getInitParam(Util.DEFAULT_INIT_DATA, "LogRecorderName");
//    logRecorder = (LogRecorder)Naming.lookup(_serverName);
      logRecorder = (RmiServer)Naming.lookup(_serverName);
      Util.create().writeMessage0("Util : init()", "儘僌儗僐乕僟乕lookup姰椆");
    }
    catch(Exception e) {
      Util.create().writeExceptionMessage(
        "Util : init()", e,
        "儘僌儗僐乕僟乕傊偺lookup偑幐攕偟傑偟偨丅"
      );
    }

    try {
      String _driverName = Util.getInitParam(Util.DEFAULT_INIT_DATA, "DbDriverName");
      if(_driverName == "") {_driverName = "oracle.jdbc.driver.OracleDriver";}
      DriverManager.registerDriver ((Driver)Class.forName(_driverName).newInstance());
      Util.create().writeMessage0("Util : init()", "DB僪儔僀僶搊榐姰椆");
    }
    catch(Exception e) {
      Util.create().writeExceptionMessage(
        "Util : init()", e,
        "DB僪儔僀僶偺搊榐偑幐攕偟傑偟偨丅"
      );
    }
  }

  /**<p>
  *Util偺僀儞僗僞儞僗傪曉偡丅<BR>
  *Singleton僷僞乕儞偺揔梡偵傛傝丄偙偺僋儔僗偺僀儞僗僞儞僗偼傾僾儕働乕僔儑儞撪偱堦偮偺傒偲側傞丅
  *僐儞僗僩儔僋僞傪巊梡偟偨捠忢偺曽朄偵傛傞僀儞僗僞儞僗壔偼惂尷偝傟傞堊丄
  *Util偺婡擻傪巊梡偡傞応崌偼偙偺儊僜僢僪偺屇傃弌偟偵傛傝丄Util偺僀儞僗僞儞僗傪庢摼偡傞昁梫偑偁傞丅
  *</p>
  *@return Util偺僀儞僗僞儞僗丅
  */
  public static Util create() {
    if(util == null) {
      util = new Util();
      util.init();
    }
    return util;
  }

  //----------------------------------------------------------------------------

  /**<p>
  *僨乕僞儀乕僗僐僱僋僔儑儞傪妋曐偟丄屇傃弌偟尦傊曉偡丅<BR>
  *Util撪偱偼僨乕僞儀乕僗僐僱僋僔儑儞傪嵟戝16屄傑偱曐帩壜擻偱偁傝丄偦傟傜偺巊梡忬懺傪娗棟偟偰偄傞丅
  *偙偺儊僜僢僪傪捠偠偰僨乕僞儀乕僗僐僱僋僔儑儞偺庢摼偑梫媮偝傟傞偲丄
  *僾乕儖偟偰偄傞僐僱僋僔儑儞偵偮偄偰巊梡忬懺傪妋擣偟丄
  *嬻偄偰偄傞傕偺偑尒偮偐偭偨応崌偵偼偦偺僐僱僋僔儑儞傪曉偟丄
  *嬻偒偑柍偄応崌偵偼怴偨側僐僱僋僔儑儞傪惗惉偟偰梫媮尦偵曉偡丅
  *</p><p>
  *傑偨丄婛偵16屄偺僐僱僋僔儑儞傪曐帩偟偰偍傝丄偦傟傜偺拞偵嬻偒忬懺偺傕偺偑柍偄応崌偵偼丄
  *巊梡拞偺僐僱僋僔儑儞偺偳傟偐偑夝曻偝傟傞傑偱丄梫媮尦傪懸偨偣傞丅
  *</p>
  *@return 僨乕僞儀乕僗傊偺僐僱僋僔儑儞丅
  *@throws UnsatisfiedLinkError 儕儞僋僄儔乕丅JDBC僪儔僀僶偑尒偮偐傜側偄応崌丅
  *@throws SQLException         僨乕僞儀乕僗僐僱僋僔儑儞偺妋曐偵幐攕偟偨応崌丅
  *@throws Exception            僨乕僞儀乕僗僐僱僋僔儑儞偺妋曐偵幐攕偟偨応崌丅
  */
  public synchronized Connection openConnection() throws Exception {
    Util.create().writeMessage0("Util : openConnection()", "start.");

    Connection _connection = null;

    try {
      while(true) {
        for(int i = 0; i < connectionDatas.length; i++) {
          if(!connectionDatas[i].isReserved()) {
            _connection = connectionDatas[i].getConnection();

            if(_connection == null) {
              String _url      = Util.getInitParam(Util.DEFAULT_INIT_DATA, "DbUrl");
              String _user     = Util.getInitParam(Util.DEFAULT_INIT_DATA, "DbUser");
              String _passWord = Util.getInitParam(Util.DEFAULT_INIT_DATA, "DbPass");

              _connection = DriverManager.getConnection(_url, _user, _passWord);
              connectionDatas[i].setConnection(_connection);
            }

            connectionDatas[i].reserve();
            break;
          }
        }

        if(_connection == null) {
          Util.create().writeMessage1("Util : openConnection()", "wait.");
          wait();
          Util.create().writeMessage1("Util : openConnection()", "received notify.");
        }
        else {break;}
      } // while(true)
    }
    catch(UnsatisfiedLinkError e) {
      Exception ex = new Exception();
      Util.create().writeExceptionMessage(
        "Util : openConnection()", ex,
        "儕儞僋僄儔乕偑敪惗偟傑偟偨丅嫲傜偔JDBC僪儔僀僶傊偺僋儔僗僷僗偑愝掕偝傟偰偄傑偣傫丅"
      );
      throw ex;
    }
    catch(SQLException e) {
      Util.create().writeExceptionMessage(
        "Util : openConnection()", e,
        "Connection偺妋曐拞偵椺奜偑敪惗偟傑偟偨丅"
      );
      Util.create().writeSQLExceptionMessage(e);
      throw e;
    }
    catch(Exception e) {
      Util.create().writeExceptionMessage(
        "Util : openConnection()", e,
        "Connection偺妋曐拞偵椺奜偑敪惗偟傑偟偨丅"
      );
      throw e;
    }

    connectionCount++;

    Util.create().writeMessage1("Util : openConnection()", "愙懕悢 = " + String.valueOf(connectionCount));
    Util.create().writeMessage0("Util : openConnection()", "end.");
    return _connection;
  }

  /**<p>
  *搉偝傟偨僨乕僞儀乕僗僐僱僋僔儑儞傪枹巊梡偲儅乕僉儞僌偟丄懠偐傜偺嵞巊梡壜擻側忬懺偵偡傞丅<BR>
  *僐僱僋僔儑儞偺曉媝傪庴偗擖傟傞嵺偵丄
  *偦偺僐僱僋僔儑儞傪捠偠偰峴傢傟偨僩儔儞僓僋僔儑儞張棟偺廔椆忬懺傪妋擣偟丄
  *僩儔儞僓僋僔儑儞偑姰椆偟偰偄側偄応崌偵偼儘乕儖僶僢僋傪峴偆丅
  *儘乕儖僶僢僋偑峴傢傟偨帪偼丄摉奩僐僱僋僔儑儞偼僾乕儕儞僌偣偢偵攋婞偡傞丅
  *</p>
  *@param  connection 夝曻偡傞僨乕僞儀乕僗僐僱僋僔儑儞丅
  *@throws Exception  僨乕僞儀乕僗僐僱僋僔儑儞偺夝曻偵幐攕偟偨応崌丅
  */
  public synchronized void closeConnection(Connection connection) throws Exception {
    Util.create().writeMessage0("Util : closeConnection()", "start.");

    connectionCount--;

    if(connectionCount < 0) {connectionCount = 0;}

    try {
      for(int i = 0; i < connectionDatas.length; i++) {
        Util.create().writeMessage0(
          "Util : closeConnection()",
          "夝曻偝傟傞僐僱僋僔儑儞傪扵偟偰偄傑偡丅"
        );

        if(connectionDatas[i].getConnection() == connection) {
          connectionDatas[i].release();

          try {
            Util.create().writeMessage0(
              "Util : closeConnection()",
              "僩儔儞僓僋僔儑儞偺廔椆忬懺傪妋擣拞丅"
            );

            connection.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
            connection.setAutoCommit(true);
          }
          catch(SQLException e) {
            Util.create().writeExceptionMessage(
              "Util : closeConnection()", e,
              "僩儔儞僓僋僔儑儞偑姰椆偟偰偄傑偣傫丅"
            );
            Util.create().writeSQLExceptionMessage(e);
            connectionDatas[i].setConnection(null);          // 00.12.14 捛壛
            Util.create().writeMessage1(                     // 00.12.14 捛壛
              "Util : closeConnection()",                    // 00.12.14 捛壛
              "僐僱僋僔儑儞傪攑婞偟傑偟偨丅"                 // 00.12.14 捛壛
            );                                               // 00.12.14 捛壛
            connection.rollback();
            connection.close();
            connection = null;
            Util.create().writeMessage1(
              "Util : closeConnection()",
              "儘乕儖僶僢僋傪幚巤偟傑偟偨丅"                 // 00.12.14 捛壛
            );
          }

          break;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产成人在线免费| 亚洲v精品v日韩v欧美v专区 | 日本国产一区二区| 国产亚洲制服色| 国产一二精品视频| 欧美一区二区观看视频| 婷婷激情综合网| 日韩一区二区三区在线观看| 毛片av一区二区| 2020国产精品自拍| 国产不卡在线一区| 最新国产成人在线观看| 色丁香久综合在线久综合在线观看| 亚洲人123区| 欧美人狂配大交3d怪物一区| 久久精品国产网站| 中文字幕电影一区| 色噜噜夜夜夜综合网| 亚洲国产视频在线| 欧美精品一区二区三区在线| 成人免费的视频| 亚洲第一主播视频| 精品日韩99亚洲| av毛片久久久久**hd| 亚洲一二三区不卡| 久久一区二区视频| 粗大黑人巨茎大战欧美成人| 亚洲精品欧美激情| 欧美一级夜夜爽| 国产99久久久久久免费看农村| 自拍偷拍欧美精品| 欧美猛男gaygay网站| 韩国精品主播一区二区在线观看| 国产精品国产三级国产aⅴ中文| 91蜜桃传媒精品久久久一区二区| 日韩国产成人精品| 国产精品国产三级国产普通话三级 | 欧美福利视频一区| 丁香婷婷综合五月| 五月综合激情日本mⅴ| 国产午夜精品一区二区三区嫩草| 一本久久a久久免费精品不卡| 另类成人小视频在线| 国产精品国产精品国产专区不片 | 麻豆精品在线看| 亚洲三级理论片| 日韩欧美亚洲一区二区| 成人激情免费电影网址| 免费成人美女在线观看.| 中文字幕在线不卡一区| 日韩一卡二卡三卡国产欧美| 91美女在线观看| 丁香婷婷综合色啪| 久久成人免费电影| 亚洲国产欧美在线人成| 国产精品色哟哟| 亚洲精品一区二区三区香蕉 | 欧美一区二区三区日韩视频| 不卡的电影网站| 国产一区二区三区在线观看免费视频| 亚洲一区二区三区四区在线| 国产欧美日韩另类一区| 欧美成人video| 欧美日韩电影在线| 色综合网站在线| 成人精品一区二区三区四区 | 亚洲欧美另类图片小说| 国产亚洲欧美激情| 精品国产麻豆免费人成网站| 欧美一级二级在线观看| 欧美日韩国产经典色站一区二区三区| 色综合久久综合| av一区二区三区四区| 成人在线一区二区三区| 国产成人av一区二区三区在线| 国产一区激情在线| 国产精品综合久久| 国产一区二区精品久久99| 狠狠色丁香久久婷婷综合丁香| 麻豆久久久久久| 国产一区二区剧情av在线| 韩国女主播一区| 国产成人在线看| 国产成人精品综合在线观看 | 国产一区在线不卡| 国产一区二区日韩精品| 国产精品一级片在线观看| 视频一区二区欧美| 日韩电影一二三区| 久久精品久久99精品久久| 精品一区在线看| 精品一区二区三区免费播放| 国产一区二区日韩精品| 成人性生交大片| 一本高清dvd不卡在线观看| 在线日韩国产精品| 7777女厕盗摄久久久| 欧美成人午夜电影| 国产色产综合产在线视频| 国产精品久久精品日日| 亚洲综合成人在线视频| 视频一区视频二区中文| 国产一区二区三区观看| jvid福利写真一区二区三区| 在线亚洲免费视频| 欧美一区二区三区四区久久| 亚洲精品在线观| 亚洲女人的天堂| 日本女人一区二区三区| 国产一区二区精品久久| 色琪琪一区二区三区亚洲区| 欧美性受xxxx| 精品少妇一区二区三区| 国产精品久久久久久久久快鸭| 一级日本不卡的影视| 日本强好片久久久久久aaa| 顶级嫩模精品视频在线看| 色综合天天综合色综合av| 欧美一级片在线看| 中文字幕一区二区三区在线观看 | 亚洲美女电影在线| 美女www一区二区| 9色porny自拍视频一区二区| 91精品在线免费| 国产精品久久久久一区| 日本成人在线一区| 国产成人99久久亚洲综合精品| 91污在线观看| 久久亚洲精品小早川怜子| 亚洲精品视频一区| 国产成人精品影院| 88在线观看91蜜桃国自产| 中文字幕日本不卡| 国产一区二区在线视频| 欧美性色黄大片| 中文字幕久久午夜不卡| 婷婷亚洲久悠悠色悠在线播放| 成人综合在线视频| 2021中文字幕一区亚洲| 亚洲一区二区五区| www.性欧美| 久久久久97国产精华液好用吗| 亚洲自拍偷拍欧美| av中文字幕在线不卡| 精品精品国产高清一毛片一天堂| 亚洲一区在线观看视频| 成人手机在线视频| 久久久久久久久久久久电影| 日韩在线卡一卡二| 欧美三级视频在线观看| 亚洲人成网站在线| 成人av影院在线| 国产日韩欧美不卡在线| 免费在线观看视频一区| 欧美三片在线视频观看| 亚洲综合色噜噜狠狠| 成人av网在线| 国产精品毛片a∨一区二区三区| 久久国产剧场电影| 欧美乱熟臀69xxxxxx| 亚洲综合免费观看高清在线观看| 91亚洲精品一区二区乱码| 日本一二三四高清不卡| 国产美女一区二区| 精品乱人伦小说| 一区二区三区 在线观看视频| 91亚洲精品乱码久久久久久蜜桃| 国产精品欧美久久久久一区二区| 国产精品一二二区| 久久综合狠狠综合久久激情| 日本欧美加勒比视频| 欧美精选一区二区| 日韩精品久久理论片| 欧美精品色一区二区三区| 亚洲成av人综合在线观看| 色香蕉成人二区免费| 亚洲精品ww久久久久久p站| 在线观看av不卡| 日精品一区二区三区| 欧美一区二区三区婷婷月色| 成人一区二区三区视频在线观看 | 久久精品视频在线免费观看| 国产一区二区三区四区五区入口 | 色又黄又爽网站www久久| 亚洲视频1区2区| 欧美三片在线视频观看 | 亚洲裸体在线观看| 欧美亚洲动漫精品| 日韩av网站免费在线| 91精品国产91久久久久久最新毛片| 欧美96一区二区免费视频| 欧美xxxxxxxxx| 成人久久18免费网站麻豆 | 国产欧美日韩精品一区| 成人综合婷婷国产精品久久免费| 亚洲欧洲综合另类| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 午夜激情一区二区| 久久综合九色综合欧美亚洲| eeuss国产一区二区三区|