亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Tomcat jdbc pool配置

系統(tǒng) 2117 0

  Tomcat jdbc pool是apache在tomcat7版本中啟用的新連接池,用它來解決以往DBCP無法解決的一些問題。

Tomcat jdbc pool的優(yōu)點(diǎn):

  (1)??? tomcat jdbc pool 近乎兼容 dbcp ,性能更高

  (2)??? 異步方式獲取連接

  (3)??? tomcat jdbc pool 是 tomcat 的一個模塊,基于 tomcat JULI,使用 Tomcat 的日志框架

  (4)??? 使用 javax.sql.PooledConnection 接口獲取連接

  (5)??? 支持高并發(fā)應(yīng)用環(huán)境

  (6)??? 超簡單,核心文件只有8個,比 c3p0 還少

  (7)??? 更好的空閑連接處理機(jī)制

  (8)??? 支持 JMX

  (9)??? 支持 XA Connection

  Tomcat jdbc pool的使用僅需2個jar包,分別為tomcat-jdbc.jar和tomcat-juli.jar,這兩個jar包都可以在tomcat7中找到,tomcat-jdbc.jar在tomcat的lib目錄下,tomcat-juli.jar在bin目錄下。

下面是我自己測試用的連接類:

      
        package
      
      
         com.grtg.util;




      
      
        import
      
      
         java.sql.Connection;


      
      
        import
      
      
         java.sql.SQLException;


      
      
        import
      
      
         java.util.Properties;




      
      
        import
      
      
         org.apache.tomcat.jdbc.pool.DataSource;


      
      
        import
      
      
         org.apache.tomcat.jdbc.pool.PoolProperties;






      
      
        /**
      
      
        

 * tomcat jdbc pool數(shù)據(jù)庫連接池管理類

 * 

 
      
      
        */
      
      
        public
      
      
        class
      
      
         DBUtil {

    
      
      
        static
      
       DataSource dataSource = 
      
        new
      
      
         DataSource();



    
      
      
        static
      
      
         {

        PoolProperties poolProperties 
      
      = 
      
        new
      
      
         PoolProperties();

        Properties dbProperties 
      
      = 
      
        new
      
      
         Properties();

        
      
      
        try
      
      
         {

            dbProperties.load(DBUtil.
      
      
        class
      
      
        .getClassLoader().getResourceAsStream(配置文件地址));

            
      
      
        //
      
      
        設(shè)置URL
      
      

            poolProperties.setUrl(dbProperties.getProperty("url"
      
        ));

            
      
      
        //
      
      
        設(shè)置驅(qū)動名
      
      

            poolProperties.setDriverClassName(dbProperties.getProperty("driver"
      
        ));

            
      
      
        //
      
      
        設(shè)置數(shù)據(jù)庫用戶名
      
      

            poolProperties.setUsername(dbProperties.getProperty("username"
      
        ));

            
      
      
        //
      
      
        設(shè)置數(shù)據(jù)庫密碼
      
      

            poolProperties.setPassword(dbProperties.getProperty("password"
      
        ));

            
      
      
        //
      
      
        設(shè)置初始化連接數(shù)
      
      

            poolProperties.setInitialSize(Integer.valueOf(dbProperties.getProperty("initialSize"
      
        )));

            

            dataSource.setPoolProperties(poolProperties);

        } 
      
      
        catch
      
      
         (Exception e) {

            
      
      
        throw
      
      
        new
      
       RuntimeException("初始化數(shù)據(jù)庫連接池失敗"
      
        );

        }

    }



    
      
      
        private
      
      
         DBUtil() {

        
      
      
        super
      
      
        ();

    }

    

    
      
      
        /**
      
      
        

     * 獲取數(shù)據(jù)庫連接

     * 
      
      
        @return
      
      
         數(shù)據(jù)庫連接

     
      
      
        */
      
      
        public
      
      
        static
      
      
        final
      
      
         Connection getConnection() {

        Connection conn 
      
      = 
      
        null
      
      
        ;

        
      
      
        try
      
      
         {

            conn 
      
      =
      
         dataSource.getConnection();

        } 
      
      
        catch
      
      
         (SQLException e) {

            
      
      
        throw
      
      
        new
      
       RuntimeException("獲取數(shù)據(jù)庫連接失敗"
      
        );

        }

        
      
      
        return
      
      
         conn;

    }



    
      
      
        /**
      
      
        

    * 關(guān)閉連接

    * 

    * 
      
      
        @param
      
      
         conn

    *            需要關(guān)閉的連接

    
      
      
        */
      
      
        public
      
      
        static
      
      
        void
      
      
         closeConnection(Connection conn) {

        
      
      
        try
      
      
         {

            
      
      
        if
      
       (conn != 
      
        null
      
       && !
      
        conn.isClosed()) {

                conn.close();

            }

        } 
      
      
        catch
      
      
         (SQLException e) {

            
      
      
        throw
      
      
        new
      
       RuntimeException("關(guān)閉數(shù)據(jù)庫連接失敗"
      
        );

        }

    }

}
      
    

下面是配置文件信息:

      
        ##############################MySQL數(shù)據(jù)庫連接驅(qū)動##############################

#數(shù)據(jù)庫連接URL

url
      
      =jdbc:mysql:
      
        //
      
      
        localhost:3306/grtg?useUnicode=true&characterEncoding=utf8
      
      
        #數(shù)據(jù)庫連接驅(qū)動

driver
      
      =
      
        com.mysql.jdbc.Driver

#數(shù)據(jù)庫連接用戶名

username
      
      =
      
        root

#數(shù)據(jù)庫連接密碼

password
      
      =
      
        root

##############################MySQL數(shù)據(jù)庫連接驅(qū)動END###########################



##############################連接池配置######################################

#初始化連接:連接池啟動時創(chuàng)建的初始化連接數(shù)量

initialSize
      
      =10
      
        

#連接池的最大數(shù)據(jù)庫連接數(shù)。設(shè)為0表示無限制

maxActive
      
      =50
      
        

#最大空閑數(shù),數(shù)據(jù)庫連接的最大空閑時間。超過空閑時間,數(shù)據(jù)庫連接將被釋放。設(shè)為0表示無限制

maxIdle
      
      =10
      
        

#最小空閑連接:連接池中容許保持空閑狀態(tài)的最小連接數(shù)量,低于這個數(shù)量將創(chuàng)建新的連接

minIdle
      
      =5
      
        

#最大建立連接等待時間。如果超過此時間將接到異常。設(shè)為
      
      -
      
        1表示無限制

maxWait
      
      =1000
      
        

#超過removeAbandonedTimeout時間后,是否進(jìn) 行沒用連接(廢棄)的回收(默認(rèn)為false,調(diào)整為true) 

removeAbandoned
      
      =
      
        true
      
      
        

#超過時間限制,回收沒有用(廢棄)的連接(默認(rèn)為 300秒,調(diào)整為180)

removeAbandonedTimeout
      
      =180
      
        

##############################連接池配置######################################
      
    

以上便是配置信息,諸位如果有好的見解可以提出,大家共同學(xué)習(xí)。

Tomcat jdbc pool配置


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一级特黄性色生活片一区二区 | 欧美乱大交xxxxx在线观看 | 全免费午夜一级毛片一级毛 | 日韩欧美亚洲一区精选 | 操操片| 欧美天堂在线视频 | 九九九国产 | 日本特黄a级高清免费大片18 | 日本高清影院 | 在线观看 亚洲 | 日本欧美一区二区三区在线观看 | 天天毛片 | 亚洲一级毛片在线播放 | 老子午夜伦不卡影院 | 九九视频在线看精品 | 日韩色视频一区二区三区亚洲 | 国产日韩高清一区二区三区 | 亚洲狠狠婷婷综合久久久图片 | 日韩免费一级片 | 综合色在线 | 四虎影视永久在线精品免费 | 老司机午夜剧场 | 天天碰天天摸天天操 | 中国美女牲交一级毛片 | 久久国产视频精品 | 色爱激情网 | 国产女人成人精品视频 | 久久久精品| 91sao国产在线观看 | 99国产大尺度福利视频 | 亚洲国产精品一区二区九九 | 日本高清中文字幕视频在线 | 奇米影视7777久久精品 | 美女久久久久 | 国产色产综合色产在线观看视频 | 中文字幕在线精品不卡 | 欧美做爰孕妇群 | www.五月天激情 | 999人在线精品播放视频 | 五月国产综合视频在线观看 | 久久久久久久九九九九 |