数据库连接池datasource

数据库连接池如C3P0和Druid能提高系统效率,节省资源。C3P0需要导入相关jar包并配置属性文件,创建ComboPooledDataSource对象来获取连接。Druid则通过DruidDataSourceFactory创建数据源,其配置文件为properties形式,且使用前需确保MySQL已启动。文章提供了最大连接数为10的Druid配置实例,并展示了创建Druid工具类的方法。
摘要由CSDN通过智能技术生成

数据库连接池概念

获取连接对象是向系统底层申请资源。耗时。
数据库连接池实际上是存放数据库连接的容器(集合)。
当系统初始化好后,容器被创建,容器会申请一些数据库连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完后,会将连接对象归还给容器。

好处

  1. 高效
  2. 节约资源

数据库连接池的实现

标准接口:DataSource Javax.sql包下的
一般我们不去实现它,而是由数据库厂商实现

  1. C3P0:数据库连接池技术(老)
  2. Druid:(德鲁伊)数据库连接池实现技术,由阿里巴巴提供

方法

  1. 获取连接:getConnection().
  2. 归还连接:conn.close().增强了close,如果连接对象conn是从连接池中获取的,那么调用conn.close()就不会关闭连接了,而是归还连接。

C3P0

步骤:

  1. 导入jar包
    c3p0-0.9.5.5.jar
    mchange-commons-java-0.2.19.jar
    不能忘记导入数据库驱动jar包mysql-connector-java-8.0.26.jar
  2. 定义配置文件:
    名称:c3p0.properties 或者 c3p0-config.xml
    路径:直接将文件放在src目录下即可
  3. 创建核心对象 :数据库连接池对象 ComboPooledDataSource
  4. 获取连接:getConnection()

Druid(要先打开mysql)

  1. 导入jar包 druid-1.1.9.jar
  2. 定义配置文件
    properties形式的
    可以叫任意名称,可以放在任意目录下(所以要手动加载)
  3. 获取数据库连接池对象(通过工厂来获取) DruidDataSourceFactory createDataSource();
  4. 获取连接 getConnection()
  5. 要打开mysql

实例

package Druid;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;

public class Druid {
   
    public static void main(String[] args) throws Exception {
   
        //导入jar包
        //定义配置文件
        //加载配置文件
        Properties properties=new Properties();
        ClassLoader cl = Druid.class.getClassLoader();
        InputStream is = cl.getResourceAsStream("Druid.properties")
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值