博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql数据库连接池:C3P0和DRUID实例
阅读量:4280 次
发布时间:2019-05-27

本文共 3564 字,大约阅读时间需要 11 分钟。

一、实现功能

通过简单配置,实现两种数据库连接池连接获得。

二、C3P0实例

1.Pom依赖

mysql
mysql-connector-java
5.1.27
com.mchange
c3p0
0.9.5.2

2.配置文件c3p0-config.xml

root
123456
jdbc:mysql://192.168.0.9:3306/mydb
com.mysql.jdbc.Driver
5
5
5
10
20
5

3.实例代码

package com.Java.BaseUse.jdbc.Dao.Imp;import com.mchange.v2.c3p0.ComboPooledDataSource;import javax.sql.DataSource;import java.sql.Connection;import java.sql.SQLException;/** * Created by Administrator on 2020/2/23. * C3P0数据库连接池 */public class mysqlPoolC3P0Imp {    // 获取连接池方法1:使用C3P0数据库连接池的方式,获取数据库的连接:不推荐    public static Connection getConnection1() throws Exception {        ComboPooledDataSource cpds = new ComboPooledDataSource();        cpds.setDriverClass("com.mysql.jdbc.Driver");        cpds.setJdbcUrl("jdbc:mysql://localhost:3306/test");        cpds.setUser("root");        cpds.setPassword("abc123");        // cpds.setMaxPoolSize(100);        Connection conn = cpds.getConnection();        return conn;    }    //获取连接池方法2:使用C3P0数据库连接池的配置文件方式,获取数据库的连接:推荐    private static DataSource cpds = new ComboPooledDataSource("helloc3p0");    public static Connection getConnection2() throws SQLException {        Connection conn = cpds.getConnection();        return conn;    }    public static void main(String[] args) throws SQLException {        Connection connection= mysqlPoolC3P0Imp.getConnection2();        System.out.println("get the C3P0 Pool!");    }}

三、DRUID实例

1.Pom依赖

mysql
mysql-connector-java
5.1.27
com.alibaba
druid
1.1.10

2.配置文件druid.properties

url=jdbc:mysql://192.168.0.9:3306/mydb?rewriteBatchedStatements=true&characterEncoding=utf-8username=rootpassword=123456driverClassName=com.mysql.jdbc.DriverinitialSize=10maxActive=20maxWait=1000filters=wall

3.实例代码

package com.Java.BaseUse.jdbc.Dao.Imp;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import java.io.IOException;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;/** * Created by Administrator on 2020/2/23. * DRUID连接池 * Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、Proxool等DB池的优点,同时加入了 * 日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池,可以说是目前最好的 * 连接池之一。 */public class mysqlPoolDruidImp {    /**     * Druid 获取连接     *     * @return     * @throws SQLException     */    public static Connection getConnection() throws SQLException {        Properties pro = new Properties();        DataSource ds=null;        Connection conn=null;        try {            pro.load(mysqlPoolDruidImp.class.getClassLoader().getResourceAsStream("druid.properties"));            ds= DruidDataSourceFactory.createDataSource(pro);            conn = ds.getConnection();            System.out.println(conn);        } catch (IOException e) {            e.printStackTrace();        } catch (Exception e) {            e.printStackTrace();        }        return conn;    }    public static void main(String[] args) throws SQLException {        Connection connection= mysqlPoolDruidImp.getConnection();        System.out.println("get the DRUID Pool!");    }}

 

转载地址:http://xcygi.baihongyu.com/

你可能感兴趣的文章
C语言 static静态变量的作用
查看>>
Linux(C/C++)下的文件操作open、fopen与freopen
查看>>
C语言 文件操作的头文件
查看>>
C语言的常用库函数(dos)之四(dir.h文件下的一些函数)
查看>>
warning: jobserver unavailable: using -j1. Add `+' to parent make rule问题怎么解决
查看>>
防火墙报文转发流程
查看>>
以太坊创始人:17岁的亿万富翁养成记
查看>>
linux下IPTABLES配置详解
查看>>
关于iptables -m选项以及规则的理解
查看>>
linux系统中查看己设置iptables规则
查看>>
一些库函数的使用注意事项
查看>>
IPv6地址自动配置中的有状态(stateful)和无状态(stateless)的区别
查看>>
详解linux下mnt目录作用
查看>>
Linux网络编程IPv4和IPv6的inet_addr、inet_aton、inet_pton等函数小结
查看>>
C compiler cannot create executables问题
查看>>
/etc/passwd 7个字段的含义
查看>>
/etc/passwd字段含义
查看>>
vsftpd 服务移植出现 500 oops : socket 解决
查看>>
source insight 3.5 函数名出现乱码的解决办法
查看>>
关于设备下挂pc与设备之间使用ipv6地址互ping的问题
查看>>