zoukankan      html  css  js  c++  java
  • Java Web总结十四之二连接池

    一、DBCP数据库连接池

      1、使用DBCP数据库连接池需要导入以下两个JAR包:

        1)commons-dbcp2-2.0.jar

        2)commons-pool2-2.2.jar

      2、使用DBCP数据库连接池需要dbcp.properties文件。

      3、使用代码如下:

        1)dbcp.properties文件代码:

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql://127.0.0.1:3306/mydb3
    username=root
    password=root

        2)调用代码:

    package com.gnnuit.web.demo;
    
    import java.io.InputStream;
    import java.sql.Connection;
    import java.util.Properties;
    
    import javax.sql.DataSource;
    
    import org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory;
    
    //DBCP的使用
    public class Demo2 {
    
        public static void main(String[] args) throws Exception {
            Properties prop = new Properties();
            InputStream is = Demo2.class.getClassLoader().getResourceAsStream(
                    "com/gnnuit/web/config/dbcp.properties");
            prop.load(is);
            DataSource ds = BasicDataSourceFactory.createDataSource(prop);
            long start = System.currentTimeMillis();
            for (int i = 0; i < 50000; i++) {
                Connection conn = ds.getConnection();
                if (conn != null) {
                    System.out.println(i + "次连接");
                }
                conn.close();
            }
            long end = System.currentTimeMillis();
            System.out.println((end - start) + "毫秒");
        }
    
    }

    二、c3p0连接池

      1、使用c3p0连接池需要导入以下两个包:

        1)c3p0-0.9.5-pre8.jar

        2)mchange-commons-java-0.2.7.jar

      2、使用c3p0连接池需要在/WEB-INF/classes/目录下存放c3p0-config.xml文件,该类ComboPooledDataSource在创建时会自动在指定的目录下找xml文件,并加载默认设置。

      3、使用代码如下:

        1)c3p0-config.xml代码如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <c3p0-config>
        <default-config>
            <property name="driverClass">com.mysql.jdbc.Driver</property>
            <property name="user">root</property>
            <property name="password">root</property>
            <property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/mydb3</property>
        </default-config>
    </c3p0-config>

        2)调用代码如下:

    package com.gnnuit.web.demo;
    
    import java.sql.Connection;
    
    import com.mchange.v2.c3p0.ComboPooledDataSource;
    
    //C3P0的用法
    public class Demo4 {
    
        public static void main(String[] args) throws Exception {
            ComboPooledDataSource cpds = new ComboPooledDataSource();
            long start = System.currentTimeMillis();
            for (int i = 0; i < 5000; i++) {
                Connection conn = cpds.getConnection();
                if (conn != null) {
                    System.out.println(i + "次连接");
                }
                conn.close();
            }
            long end = System.currentTimeMillis();
            System.out.println((end - start)/1000 + "秒");
        }
    
    }
  • 相关阅读:
    无线路由器wds桥接技术+丢包率
    2016CCPC东北地区大学生程序设计竞赛1008/HDU 5929 模拟
    Codeforces Round #375 (Div. 2) A B C 水 模拟 贪心
    Intel Code Challenge Elimination Round (Div.1 + Div.2, combined) A B C D 水 模拟 并查集 优先队列
    Codeforces Round #310 (Div. 2) A B C
    Codeforces Round #374 (Div. 2) A B C D 水 模拟 dp+dfs 优先队列
    Codeforces Round #313 (Div. 2) A B C 思路 枚举 数学
    Codeforces Round #373 (Div. 2) A B C 水 贪心 模拟(四舍五入进位)
    CentOS7 PostgreSQL 安装
    数据库事务的隔离级别
  • 原文地址:https://www.cnblogs.com/FlySheep/p/3673913.html
Copyright © 2011-2022 走看看