C3P0连接池

摘要:
C3P0连接池:最常用的连接池技术!Spring框架,默认支持C3P0连接池技术!

C3P0连接池:

最常用的连接池技术!Spring框架,默认支持C3P0连接池技术!

C3P0连接池,核心类:

CombopooledDataSource ds;

使用:

  1. 下载,引入jar文件: c3p0-0.9.1.2.jar
  2. 使用连接池,创建连接

a) 硬编码方式

b) 配置方式(xml)


packagecom.loaderman.demo.d_c3p0;
importjava.sql.Connection;
importjava.sql.PreparedStatement;
importorg.junit.Test;
importcom.mchange.v2.c3p0.ComboPooledDataSource;
public classApp {
    @Test
    //1. 硬编码方式,使用C3P0连接池管理连接
    public void testCode() throwsException {
        //创建连接池核心工具类
        ComboPooledDataSource dataSource = newComboPooledDataSource();
        //设置连接参数:url、驱动、用户密码、初始连接数、最大连接数
        dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/jdbc_demo");
        dataSource.setDriverClass("com.mysql.jdbc.Driver");
        dataSource.setUser("root");
        dataSource.setPassword("root");
        dataSource.setInitialPoolSize(3);
        dataSource.setMaxPoolSize(6);
        dataSource.setMaxIdleTime(1000);
        //---> 从连接池对象中,获取连接对象
        Connection con =dataSource.getConnection();
        //执行更新
        con.prepareStatement("delete from admin where id=7").executeUpdate();
        //关闭
con.close();
    }
    @Test
    //2. XML配置方式,使用C3P0连接池管理连接
    public void testXML() throwsException {
        //创建c3p0连接池核心工具类
        //自动加载src下c3p0的配置文件【c3p0-config.xml】
        ComboPooledDataSource dataSource = new ComboPooledDataSource();//使用默认的配置
        PreparedStatement pstmt = null;
        //获取连接
        Connection con =dataSource.getConnection();
        for (int i=1; i<11;i++){
            String sql = "insert into employee(empName,dept_id) values(?,?)";
            //执行更新
            pstmt =con.prepareStatement(sql);
            pstmt.setString(1, "Rose" +i);
            pstmt.setInt(2, 1);
            pstmt.executeUpdate();
        }
        pstmt.close();
        //关闭
con.close();
    }
}

c3p0-config.xml

<c3p0-config>
    <default-config>
        <property name="jdbcUrl">jdbc:mysql://localhost:3306/jdbc_demo
        </property>
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="user">root</property>
        <property name="password">root</property>
        <property name="initialPoolSize">3</property>
        <property name="maxPoolSize">6</property>
        <property name="maxIdleTime">1000</property>
    </default-config>
    <named-config name="oracle_config">
        <property name="jdbcUrl">jdbc:mysql://localhost:3306/jdbc_demo</property>
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="user">root</property>
        <property name="password">root</property>
        <property name="initialPoolSize">3</property>
        <property name="maxPoolSize">6</property>
        <property name="maxIdleTime">1000</property>
    </named-config>
</c3p0-config>

免责声明:文章转载自《C3P0连接池》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇repo 回退当前分支下所有仓库到指定日期前的最新代码版本nginx创建本地服务器和配置代理(解决跨域)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server 连接字符串和身份验证

在做数据开发的时候,常常需要用到数据库连接字符串,很多时候都不知道连接字符串中每个字段的具体含义,今天就在这里总结一下,方便以后使用。下面就用一个简单的例子开始 Data Source=(local); Database=WebDB; User ID=WebUser; Password=WebUser; pooling=true; min pool siz...

springmvc多环境配置-profiles

1 pom.xml添加profiles标签 <profiles> <!--pro 线上环境--> <profile> <id>hdapp_pro</id> <properties> <db.main.url>jdbc...

java 连接 sqlserver

1.下载jdbc:Download - JDBC Driver for SQL Server | Microsoft Docs 2.提取jdbc的内容:  3.导入jar包到eclipse   输入代码,运行: package test; import java.sql.Connection; import java.sql.DriverManage...

安装dcm4chee-arc-light-5.4.1-mysql步骤

一.进入网址: https://github.com/dcm4che/dcm4chee-arc-light/wiki/Installation这个是GitHub上面给的步骤,可能会比较难理解,按照所给的步骤做,可能会出现各种问题,在此将笔者遇见的问题列举出来,并给出解决方案。 二.安装所需环境: 1、JDK 1.8.0_912、wildfly-10.0...

SpringBoot入门到出家

SpringBoot的Actuator监控 Actuator:对系统的监控 是SpringBoot提供的对应用系统监控的集成功能,可以对系统进行配置查看,相关功能统计等,在Spring Cloud中,主要完成微服务的监控,可以查看微服务之间的数据处理和调用,当出现异常时,可以快速定位问题所在 其功能和Dubbo的监控中心类似,区别就是一个需要专门部署,而...

java插入emoji表情报错

插入Emoji表情,保存到数据库时报错: Caused by: java.sql.SQLException: Incorrect string value: 'xF0x9Fx98x84' for column 'review' at row 1at com.mysql.jdbc.SQLError.createSQLException(SQLError.ja...