欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用C3P0改造JDBC對數(shù)據(jù)庫的連接

 更新時間:2019年08月21日 14:24:55   作者:learnpy3  
這篇文章主要為大家詳細介紹了使用C3P0改造JDBC對數(shù)據(jù)庫的連接,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了使用C3P0改造JDBC對數(shù)據(jù)庫的連接,供大家參考,具體內(nèi)容如下

1.Connection對象在JDBC使用的時候.使用的時候就會去創(chuàng)建一個對象,使用結(jié)束以后就會將這個對象給銷毀了.每次創(chuàng)建和銷毀對象都是耗時操作.需要使用連接池對其進行優(yōu)化.程序初始化的時候,初始化多個連接,將多個連接放入到池中(內(nèi)存中).每次獲取的時候,都可以直接從連接池中進行獲取.使用結(jié)束以后,將連接歸還到池中。

本文介紹的連接池為:C3P0

2.使用步驟

導入jar包:c3p0-0.9.1.2.jar
在src文件夾下創(chuàng)建c3p0-config.xml文件
使用C3P0連接池

3.代碼實現(xiàn)

package lesson15_jdbc;

import com.mchange.v2.c3p0.ComboPooledDataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class C3P0_lianjiechi {
  public static void main(String[] args) {
    //使用自定義配置
    ComboPooledDataSource dataSource1=new ComboPooledDataSource();
    //使用自定義配置
    //ComboPooledDataSource dataSource2 = new ComboPooledDataSource("");
    //建立連接
    try{
      Connection conn = dataSource1.getConnection();
      String sql="select * from 1_mytable1";
      PreparedStatement pst=conn.prepareStatement(sql);
      ResultSet res = pst.executeQuery();
      while(res.next()){
        System.out.println(res.getString("n")+"->"+res.getString("age")+"->"+res.getString("gender"));
      }
      res.close();
      pst.close();
      conn.close();
    }catch (SQLException e){
      e.printStackTrace();
    }
  }
}

4.c3p0-config.xml配置文件(如下)

<c3p0-config>
  <!-- 默認配置,如果沒有指定則使用這個配置 -->
  <default-config>
   <!-- 基本配置 -->
   <property name="driverClass">com.mysql.jdbc.Driver</property>
   <property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/1_mydata</property>
   <property name="user">root</property>
   <property name="password">123456</property>
  
   <!--擴展配置-->
   <property name="checkoutTimeout">30000</property>
   <property name="idleConnectionTestPeriod">30</property>
   <property name="initialPoolSize">10</property>
   <property name="maxIdleTime">30</property>
   <property name="maxPoolSize">100</property>
   <property name="minPoolSize">10</property>
   <property name="maxStatements">200</property>
  </default-config> 
  
  
  <!-- 命名的配置 -->
  <named-config name="Space_c3p0">
   <property name="driverClass">com.mysql.jdbc.Driver</property>
   <property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/1_mydata</property>
   <property name="user">root</property>
   <property name="password">123456</property>
   
   
   <!-- 如果池中數(shù)據(jù)連接不夠時一次增長多少個 -->
   <property name="acquireIncrement">5</property>
   <property name="initialPoolSize">20</property>
   <property name="minPoolSize">10</property>
   <property name="maxPoolSize">40</property>
   <property name="maxStatements">20</property>
   <property name="maxStatementsPerConnection">5</property>
  </named-config>
</c3p0-config> 

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 獲取指定日期的實現(xiàn)方法總結(jié)

    Java 獲取指定日期的實現(xiàn)方法總結(jié)

    以下是對Java中獲取指定日期的實現(xiàn)方法進行了歸納總結(jié),需要的朋友可以參考下
    2013-07-07
  • Java使用Scanner類進行文件的讀取方式

    Java使用Scanner類進行文件的讀取方式

    這篇文章主要介紹了Java使用Scanner類進行文件的讀取方式,具有很好的參考價值,希望對大家有所幫助。以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
    2022-11-11
  • Java詳細介紹單例模式的應(yīng)用

    Java詳細介紹單例模式的應(yīng)用

    單例模式(Singleton Pattern)是 Java 中最簡單的設(shè)計模式之一。這種類型的設(shè)計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式
    2022-09-09
  • 使用Java實現(xiàn)5種負載均衡算法實例

    使用Java實現(xiàn)5種負載均衡算法實例

    負載均衡指由多臺服務(wù)器以對稱的方式組成一個服務(wù)器集合,每臺服務(wù)器都具有等價的地位,都可以單獨對外提供服務(wù)而無須其他服務(wù)器的輔助,這篇文章主要給大家介紹了關(guān)于使用Java實現(xiàn)5種負載均衡算法的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • JVM完全解讀之Metaspace解密源碼分析

    JVM完全解讀之Metaspace解密源碼分析

    通過這篇文章,你將可以了解到,為什么會有metaspace?metaspace的組成,metaspace的VM參數(shù),jstat里我們應(yīng)該關(guān)注metaspace的哪些值,有需要的朋友可以借鑒參考下
    2022-01-01
  • JDK線程池和Spring線程池的使用實例解析

    JDK線程池和Spring線程池的使用實例解析

    這篇文章主要介紹了JDK線程池和Spring線程池的使用實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Java關(guān)于重排鏈表詳細解析

    Java關(guān)于重排鏈表詳細解析

    在我們平時的代碼過程中,鏈表是我們經(jīng)常遇到的一個數(shù)據(jù)結(jié)構(gòu),面試題中鏈表占很大一部分,可見鏈表操作是非常重要的。本篇文章我們來探究一下如何進行重排鏈表
    2022-01-01
  • 關(guān)于mybatis傳入?yún)?shù)一直為null的問題

    關(guān)于mybatis傳入?yún)?shù)一直為null的問題

    這篇文章主要介紹了關(guān)于mybatis傳入?yún)?shù)一直為null的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • JAVA 實現(xiàn)二叉樹(鏈式存儲結(jié)構(gòu))

    JAVA 實現(xiàn)二叉樹(鏈式存儲結(jié)構(gòu))

    本篇文章主要介紹用JAVA 實現(xiàn)二叉樹,并提供實例.對二叉樹數(shù)據(jù)結(jié)構(gòu)很好的學習實踐,有需要的朋友可以參考下
    2016-07-07
  • 圖解Java排序算法之3種簡單排序

    圖解Java排序算法之3種簡單排序

    這篇文章主要為大家詳細介紹了Java排序算法之3種簡單排序,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11

最新評論