<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    甜咖啡

    我的IT空間

    c3p0連接池

    package db;
    import java.beans.PropertyVetoException;
    import java.sql.Connection;
    import java.sql.SQLException;
    import com.mchange.v2.c3p0.ComboPooledDataSource;
    public class DBPool {
    private ComboPooledDataSource dataSource;
    public static Connection con;
    public DBPool() {
    try {
    dataSource = new ComboPooledDataSource();
    dataSource.setUser("test");
    dataSource.setPassword("test");
    dataSource.setJdbcUrl("jdbc:oracle:thin:@localhost:1521:orcl");
    dataSource.setDriverClass("oracle.jdbc.driver.OracleDriver");
    dataSource.setInitialPoolSize(2);
    dataSource.setMinPoolSize(1);
    dataSource.setMaxPoolSize(10);
    dataSource.setMaxStatements(50);
    dataSource.setMaxIdleTime(60);
    dataSource.setAcquireRetryAttempts(3);   
    } catch (PropertyVetoException e) {
    }
    }
    public final static DBPool getInstance() {
    return new DBPool();
    }
    public final Connection getConnection() {
    try {
    return dataSource.getConnection();
    } catch (SQLException e) {
    return null;
    }
    }

            //測試方法
    public static void main(String[] args) throws SQLException {
    con = DBPool.getInstance().getConnection();
    System.out.println(con);
    try {
    if (con != null){con.close();}
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    }


       //初始化時獲取三個連接,取值應在minPoolSize與maxPoolSize之間。Default: 3 initialPoolSize  
        cpds.setInitialPoolSize(initialPoolSize);   
        //連接池中保留的最大連接數。Default: 15 maxPoolSize   
        cpds.setMaxPoolSize(maxPoolSize);
        //連接池中保留的最小連接數。   
        cpds.setMinPoolSize(minPoolSize);
        //獲得連接的最大等待毫秒數。Default: 1000 acquireRetryDelay
        cpds.setAcquireRetryDelay(acquireRetryDelay);
        //最大空閑時間,60秒內未使用則連接被丟棄。若為0則永不丟棄。Default: 0 maxIdleTime   
        cpds.setMaxIdleTime(maxIdleTime);
        //當連接池中的連接耗盡的時候c3p0一次同時獲取的連接數。Default: 3 acquireIncrement   
        //cpds.setAcquireIncrement(3);   
        //每60秒檢查所有連接池中的空閑連接。Default: 0 idleConnectionTestPeriod   
        //cpds.setIdleConnectionTestPeriod(60);
        //連接關閉時默認將所有未提交的操作回滾。Default: false autoCommitOnClose   
        //cpds.setAutoCommitOnClose(true);
        //JDBC的標準參數,用以控制數據源內加載的PreparedStatements數量。但由于預緩存的statements屬于單個connection而不是整個連接池。所以設置這個參數需要考慮到多方面的因素。如果maxStatements與maxStatementsPerConnection均為0,則緩存被關閉。Default: 0
        //cpds.setMaxStatements(1);

        //maxStatementsPerConnection定義了連接池內單個連接所擁有的最大緩存statements數
        //cpds.setMaxStatementsPerConnection(100);

        //定義所有連接測試都執行的測試語句。在使用連接測試的情況下這個一顯著提高測試速度。注意:測試的表必須在初始數據源的時候就存在。Default: null preferredTestQuery  
        //cpds.setPreferredTestQuery("select sysdate from dual");   
        // 因性能消耗大請只在需要的時候使用它。如果設為true那么在每個connection提交的   
        // 時候都將校驗其有效性。建議使用idleConnectionTestPeriod或automaticTestTable   
        // 等方法來提升連接測試的性能。Default: false testConnectionOnCheckout   
        //cpds.setTestConnectionOnCheckout(true);
        //如果設為true那么在取得連接的同時將校驗連接的有效性。Default: false testConnectionOnCheckin   
        //cpds.setTestConnectionOnCheckin(true);   
        //定義在從數據庫獲取新連接失敗后重復嘗試的次數。Default: 30 acquireRetryAttempts   
        //cpds.setAcquireRetryAttempts(30);     
        //獲取連接失敗將會引起所有等待連接池來獲取連接的線程拋出異常。但是數據源仍有效   
        //保留,并在下次調用getConnection()的時候繼續嘗試獲取連接。如果設為true,那么在嘗試   
        //獲取連接失敗后該數據源將申明已斷開并永久關閉。Default: false breakAfterAcquireFailure   
        //cpds.setBreakAfterAcquireFailure(false);   

      //兩次連接中間隔時間,單位毫秒。Default: 1000 acquireRetryDelay
      cpds.setAcquireRetryDelay(60000);

    java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getClob(異常解決辦法

    最近遇到了一個頭痛的問題,可能大家也遇到過。經過多番的詢問與查找,終于知道問題原因的所在:異常內容如下:

    java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getClob(Ljava/lang/String;)Ljava/sql/Clob;

    問題原因:Oracle驅動版本不對

    解決辦法:在Oracle服務器上找到這個驅動,然后cp到Apache的lib目錄下,并同是修改環境變量classpath,保證這個lib/classes12.jar在最前面;修改完后,重新啟動服務,問題就可以解決。

    (ojdbc14.jar在classes12.jar前面)

     

    posted on 2012-09-20 15:21 甜咖啡 閱讀(5959) 評論(0)  編輯  收藏


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


    網站導航:
     

    導航

    <2012年9月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    統計

    常用鏈接

    留言簿(1)

    我參與的團隊

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲成人精品久久| 国产亚洲精品AA片在线观看不加载 | 亚洲精品乱码久久久久久蜜桃不卡 | 日韩电影免费在线| 亚洲AV网一区二区三区| 亚洲AV日韩AV永久无码色欲| 青青青国产在线观看免费| 亚洲国产精品毛片av不卡在线| 337p日本欧洲亚洲大胆人人| 国产在线观看免费不卡| 男男gvh肉在线观看免费| 免费人成视频x8x8入口| 久香草视频在线观看免费| 中文字幕人成人乱码亚洲电影| 亚洲娇小性色xxxx| 天天看免费高清影视| 亚洲AV无码一区二区三区久久精品 | 国产精品久久免费视频| 老司机午夜性生免费福利| 99精品视频在线视频免费观看| 亚洲av成人无码久久精品| 最近中文字幕完整版免费高清| 亚洲国产精品成人| 中文字幕在线视频免费| 亚洲人成网址在线观看| 免费无码黄十八禁网站在线观看| 色噜噜的亚洲男人的天堂| 亚洲国产综合无码一区二区二三区| a毛片免费全部播放完整成| 日木av无码专区亚洲av毛片| 精品熟女少妇AV免费观看| 污污视频免费观看网站| 日韩一级免费视频| 一级毛片免费播放试看60分钟| 亚洲国产精品久久66| 成全视频免费高清 | 亚洲人成7777影视在线观看| 免费无码又爽又刺激毛片| 久久九九久精品国产免费直播| 免费人成在线观看视频播放 | 亚洲国产精品日韩在线观看|