Sky's blog

          我和我追逐的夢

          常用鏈接

          統計

          其他鏈接

          友情鏈接

          最新評論

          dbcp配置--官方文檔中文版本

              dbcp配置中文版本,翻譯自apache 官方文檔,原文請見http://commons.apache.org/dbcp/configuration.html。

          參數描述
          username 傳遞給JDBC驅動的用于建立連接的用戶名
          password 傳遞給JDBC驅動的用于建立連接的密碼
          url 傳遞給JDBC驅動的用于建立連接的URL
          driverClassName 使用的JDBC驅動的完整有效的java 類名
          connectionProperties 當建立新連接時被發送給JDBC驅動的連接參數,格式必須是 [propertyName=property;]*
          注意:參數user/password將被明確傳遞,所以不需要包括在這里。



          參數默認值描述
          defaultAutoCommit true 連接池創建的連接的默認的auto-commit狀態
          defaultReadOnly driver default 連接池創建的連接的默認的read-only狀態. 如果沒有設置則setReadOnly方法將不會被調用. (某些驅動不支持只讀模式,比如:Informix)
          defaultTransactionIsolation driver default 連接池創建的連接的默認的TransactionIsolation狀態. 下面列表當中的某一個: (參考javadoc)
          • NONE
          • READ_COMMITTED
          • READ_UNCOMMITTED
          • REPEATABLE_READ
          • SERIALIZABLE
          defaultCatalog
          連接池創建的連接的默認的catalog



          參數默認值描述
          initialSize 0 初始化連接:連接池啟動時創建的初始化連接數量,1.2版本后支持
          maxActive 8 最大活動連接:連接池在同一時間能夠分配的最大活動連接的數量, 如果設置為非正數則表示不限制
          maxIdle 8 最大空閑連接:連接池中容許保持空閑狀態的最大連接數量,超過的空閑連接將被釋放,如果設置為負數表示不限制
          minIdle 0 最小空閑連接:連接池中容許保持空閑狀態的最小連接數量,低于這個數量將創建新的連接,如果設置為0則不創建
          maxWait 無限 最大等待時間:當沒有可用連接時,連接池等待連接被歸還的最大時間(以毫秒計數),超過時間則拋出異常,如果設置為-1表示無限等待



          參數默認值描述
          validationQuery
          SQL查詢,用來驗證從連接池取出的連接,在將連接返回給調用者之前.如果指定,則查詢必須是一個SQL SELECT并且必須返回至少一行記錄
          testOnBorrow true 指明是否在從池中取出連接前進行檢驗,如果檢驗失敗,則從池中去除連接并嘗試取出另一個.
          注意: 設置為true后如果要生效,validationQuery參數必須設置為非空字符串
          testOnReturn false 指明是否在歸還到池中前進行檢驗
          注意: 設置為true后如果要生效,validationQuery參數必須設置為非空字符串
          testWhileIdle false 指明連接是否被空閑連接回收器(如果有)進行檢驗.如果檢測失敗,則連接將被從池中去除.
          注意: 設置為true后如果要生效,validationQuery參數必須設置為非空字符串
          timeBetweenEvictionRunsMillis -1 在空閑連接回收器線程運行期間休眠的時間值,以毫秒為單位. 如果設置為非正數,則不運行空閑連接回收器線程
          numTestsPerEvictionRun 3 在每次空閑連接回收器線程(如果有)運行時檢查的連接數量
          minEvictableIdleTimeMillis 1000 * 60 * 30 連接在池中保持空閑而不被空閑連接回收器線程(如果有)回收的最小時間值,單位毫秒



          參數默認值描述
          poolPreparedStatements false 開啟池的prepared statement 池功能
          maxOpenPreparedStatements 不限制 statement池能夠同時分配的打開的statements的最大數量, 如果設置為0表示不限制

          這里可以開啟PreparedStatements池. 當開啟時, 將為每個連接創建一個statement池,并且被下面方法創建的PreparedStatements將被緩存起來:
              * public PreparedStatement prepareStatement(String sql)
              * public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
          注意: 確認連接還有剩余資源可以留給其他statement


          參數默認值描述
          accessToUnderlyingConnectionAllowed false 控制PoolGuard是否容許獲取底層連接

          如果容許則可以使用下面的方式來獲取底層連接:
              Connection conn = ds.getConnection();
              Connection dconn = ((DelegatingConnection) conn).getInnermostDelegate();
              ...
              conn.close();

          默認false不開啟, 這是一個有潛在危險的功能, 不適當的編碼會造成傷害.(關閉底層連接或者在守護連接已經關閉的情況下繼續使用它).請謹慎使用,并且僅當需要直接訪問驅動的特定功能時使用.
          注意: 不要關閉底層連接, 只能關閉前面的那個.


          參數默認值描述
          removeAbandoned false 標記是否刪除泄露的連接,如果他們超過了removeAbandonedTimout的限制.如果設置為true, 連接被認為是被泄露并且可以被刪除,如果空閑時間超過removeAbandonedTimeout. 設置為true可以為寫法糟糕的沒有關閉連接的程序修復數據庫連接.
          removeAbandonedTimeout 300 泄露的連接可以被刪除的超時值, 單位秒
          logAbandoned false 標記當Statement或連接被泄露時是否打印程序的stack traces日志。被泄露的Statements和連接的日志添加在每個連接打開或者生成新的Statement,因為需要生成stack trace。

          如果開啟"removeAbandoned",那么連接在被認為泄露時可能被池回收. 這個機制在(getNumIdle() < 2) and (getNumActive() > getMaxActive() - 3)時被觸發.
          舉例當maxActive=20, 活動連接為18,空閑連接為1時可以觸發"removeAbandoned".但是活動連接只有在沒有被使用的時間超過"removeAbandonedTimeout"時才被刪除,默認300秒.在resultset中游歷不被計算為被使用.


          posted on 2008-02-19 16:28 sky ao 閱讀(17423) 評論(3)  編輯  收藏 所屬分類: database

          評論

          # re: dbcp配置--官方文檔中文版本[未登錄] 2008-03-07 17:31 a

          maxActive參數不能設為0,否則數據庫忙的時候,會影響程序的運行。  回復  更多評論   

          # re: dbcp配置--官方文檔中文版本[未登錄] 2008-03-09 21:57 飄然

          maxActive參數不能設為0?

          我的理解你說的不是是否容許配制為0,而是配制為0的后果吧?maxActive配制為非正整數(<= 0)是,表示不受限制。這樣當請求數量大時,連接池的連接數將無限增大,最后超過數據庫承受能力。

          這個問題就需要使用者自己衡量處理策略,和dbcp具體的配制無關。  回復  更多評論   

          # re: dbcp配置--官方文檔中文版本 2009-05-02 11:30 josdoc

          Java開源文檔(www.josdoc.com)轉載了您的文章!若有異議請告知,謝謝!  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 叶城县| 棋牌| 惠东县| 丹棱县| 常山县| 喀什市| 台湾省| 河南省| 正镶白旗| 中山市| 潜山县| 吉安县| 隆昌县| 海丰县| 阳西县| 枣庄市| 如皋市| 运城市| 乌鲁木齐县| 盘锦市| 滁州市| 阿荣旗| 宜君县| 白河县| 韶关市| 浦江县| 娱乐| 开封市| 石景山区| 化隆| 五河县| 兴业县| 临沧市| 新疆| 泾川县| 三河市| 新郑市| 中方县| 敦煌市| 深水埗区| 搜索|