JDBC入门(三):数据库连接池

4 篇文章 0 订阅

1.数据库连接池
C3P0技术和Druid技术。
2.C3P0使用步骤
导入c3p0-0.9.5.2 jar和machang-commons-java-0.2.1.2 jar包;
定义配置文件,名称为c3p0.properties或者c3p0-config.xml
路径为src目录下;
创建核心对象,数据库连接池对象为CompooledDatasource
获取连接,使用getConnection()方法。

查看连接对象

public class c3p0Demo1 {
    public static void main(String[] args) {
        //1.创建数据库连接池对象
        DataSource ds = new ComboPooledDataSource();
        //2.获取连接对象
        try {
            Connection connection = ds.getConnection();
            //3.打印结果,看看输出的连接对象是否是字符串形式
            System.out.println(connection);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

XML文件

<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
  <default-config>
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">
     		jdbc:mysql://localhost:3306/bookmanager
     	</property>
		<property name="user">root</property>
		<property name="password">root</property>
		<property name="checkoutTimeout">3000</property>
		<property name="initialPoolSize">5</property>
		<property name="maxIdleTime">30</property>
		<property name="maxPoolSize">10</property>
		<property name="minPoolSize">5</property>
		<property name="maxStatements">200</property>
	</default-config> 
	<named-config name="myc3p0">
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">
           	jdbc:mysql://localhost:3306/bookmanager
        </property>
		<property name="user">root</property>
		<property name="password">admin</property>
		<property name="initialPoolSize">5</property>
		<property name="maxPoolSize">15</property>
	</named-config>
</c3p0-config>

3.Druid使用步骤
导入druid-1.0.9 jar;
定义配置文件,为properties形式,可放在任意目录下;
获取数据库连接池对象,通过工厂类DruidDataSourceFactory来获取
获取连接。

查看连接对象

public class druidDemo1 {
    public static void main(String[] args) {
        //1.导入jar包
        //2.定义配置文件
        try {
            //3.加载配置文件
            Properties properties = new Properties();
            InputStream resourceAsStream = druidDemo1.class.getClassLoader().getResourceAsStream("druid.properties");
            properties.load(resourceAsStream);
            //4.获取数据库连接池对象
            DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);
            //5.获取连接
            Connection connection = dataSource.getConnection();
            System.out.println(connection);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Properties文件

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///bookmanager
username=root
password=root
#初始化连接数量
initialSize=5
#最大连接数
maxActive=10
#最大等待时间
maxWait=3000
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值