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

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

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

    2008年10月23日 #

    java 數據庫緩沖池 使用c3p0

    c3p0很容易使用的開源專業級jdbc數據庫緩沖池。
    它是sourceforge上的一個開源項目,
    項目在
    http://sourceforge.net/projects/c3p0
    他的眾多特性這里就不一一介紹了。
    比較爽的一點就是
    當Connection歸還緩沖池時,c3p0會很小心的關閉
    這條連接打開的Statement和ResultSet,免去了使用時
    自己動手小心翼翼的關閉。

    c3p0使用非常簡單,這里給一個例子

    package common.db;

    import java.sql.Connection;
    import java.sql.SQLException;
    import java.util.Properties;


    import com.mchange.v2.c3p0.ComboPooledDataSource;
    import com.mchange.v2.c3p0.DataSources;

    public final class ConnectionManager {
    ?private static ConnectionManager instance;
    ?
    ?public ComboPooledDataSource ds;
    ?private static String c3p0Properties="c3p0.properties";
    ?
    ?private ConnectionManager() throws Exception {
    ??Properties p = new Properties();
    ??p.load(this.getClass().getResourceAsStream(c3p0Properties));
    ??ds = new ComboPooledDataSource();
    ?}
    ?
    ?public static final ConnectionManager getInstance() {
    ??if (instance == null) {
    ???try {
    ????instance = new ConnectionManager();
    ???} catch (Exception e) {
    ????e.printStackTrace();
    ???}
    ??}
    ??return instance;
    ?}
    ?
    ?public synchronized final Connection getConnection() {
    ??try {
    ???return ds.getConnection();
    ??} catch (SQLException e) {
    ???e.printStackTrace();
    ??}
    ??return null;
    ?}

    ?protected void finalize() throws Throwable {
    ??DataSources.destroy(ds);?//關閉datasource
    ??super.finalize();
    ?}
    ?
    }

    然后在ConnectionManager類的目錄下再創建一個配置文件c3p0.properties
    內容如下:
    #db login parameters
    driverClass=com.mysql.jdbc.Driver
    jdbcUrl=jdbc:mysql://localhost/test?useUnicode=no&characterEncoding=GBK
    user=test
    password=test

    #pool parameters
    initialPoolSize=2
    maxPoolSize=5
    #maxIdleTime=10
    #idleConnectionTestPeriod=5
    autoCommitOnClose=true

    完整的配置文件參數參看c3p0的文檔

    使用connection時很簡單
    Connection conn = ConnectionManager.getInstance().getConnection();
    ...
    最后 conn.close() 即可,

    posted @ 2008-10-23 10:24 金家寶 閱讀(4346) | 評論 (2)編輯 收藏

    JDBC也分2.0和3.0?

    如題。研究中...以前沒有注意過。

    posted @ 2008-10-23 10:10 金家寶 閱讀(294) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 中文字幕亚洲综合久久男男| 亚洲成年看片在线观看| 亚洲成av人在线视| 男女一边摸一边做爽的免费视频 | 日本妇人成熟免费中文字幕| 色婷婷亚洲十月十月色天| 无码国产精品一区二区免费16| 亚洲AV无码久久精品蜜桃| 99久在线国内在线播放免费观看| 西西人体44rt高清亚洲| 国产曰批免费视频播放免费s | 久久亚洲精品专区蓝色区| 成人毛片免费观看| 国产亚洲综合视频| 亚洲乱码中文字幕综合| 国产午夜精品久久久久免费视| 久久精品国产99精品国产亚洲性色| 99视频有精品视频免费观看| 亚洲Av无码一区二区二三区| 97无码免费人妻超级碰碰碰碰| 亚洲欧美成人av在线观看| 亚洲成年看片在线观看| 日韩免费在线视频| 亚洲看片无码在线视频| 免费人成无码大片在线观看| 99在线免费视频| 91嫩草亚洲精品| 四虎影视免费永久在线观看| 四虎影视久久久免费观看| 久久精品国产精品亚洲艾草网| 国国内清清草原免费视频99 | 久久免费美女视频| 亚洲中文字幕无码av在线| 免费在线精品视频| 一级做a爰全过程免费视频| 亚洲日韩AV无码一区二区三区人| 国产L精品国产亚洲区久久 | 香蕉免费一区二区三区| 亚洲日韩在线中文字幕综合| 久久91亚洲精品中文字幕| 日本特黄特黄刺激大片免费|