数据库连接池-简介&Druid使用

数据库连接池-简介&Druid使用(简单实战入门)

数据库连接池简介

  • 数据库连接池是一个容器,负责分配、管理数据库连接(Connection)
  • 它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;
  • 释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏
  • 好处:
    • 资源重用
    • 提示系统响应速度
    • 避免数据库连接遗漏

数据库连接池实现

  • 标准接口:Data Source

    • 官方(SUN)提供的数据库连接池标准接口,由第三方组织实现此接口
    • 功能: 获取连接
    Connection getConnection()
    
  • 常见的数据库连接池:

    • DBCP
    • C3P0
    • Druid
  • Druid(德鲁伊)

    • Druid连接池是阿里巴巴开源的数据库连接池项目
    • 功能强大性能优秀,是java最好的数据库连接池之一

Driud使用步骤

  1. 导入jar包 druid-1.1.12.jar

    如何获取与导入可见:Druid-1.1.12.jar下载 (链接下载+使用)_druid下载-CSDN博客

  2. 定义配置文件

    此处我选择在与我druid同一个文件目录下创建配置文件

    在这里插入图片描述

    详细配置文件代码

    driverClassName=com.mysql.cj.jdbc.Driver
    url=jdbc:mysql:///test?useSSL=false&useServerPrepStmts=true&allowPublicKeyRetrieval=true
    username=root
    password=123
    #初始化连接数量
    initialSize=5
    #最大连接数
    maxActive=10
    #最大等待时间
    maxWait=3000
    
  3. 此处注意”test“为数据库名称,用时注意修改成自己相应的数据库名称;

    我这边遇到过的问题是如果你使用的SQL是8.0以上的话需要使用

    driverClassName=com.mysql.cj.jdbc.Driver
    

    如果使用的SQL是8.0以下则使用

    driverClassName=com.mysql.jdbc.Driver
    

    如果不正确可能会报错

  4. 加载配置文件

    小技巧:注意路径这边可以先注释其他代码,直接打印,来查看当前文件路径

    System.out.println(System.getProperty("user.dir"));
    

    此时我的路径为

    在这里插入图片描述

    此时选取相对路径

    在这里插入图片描述

    我们在文件中打开后,只选取后面的路径,即相对路径如下即可

    //3.加载配置文件
    Properties prop = new Properties();
    prop.load(new FileInputStream("jdbc/jdbcdame/src/main/java/com/druid.properties"));
    
  5. 获取数据库连接池对象

    //4.获取连接池对象
            DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
    
  6. 获取连接

//5.获取数据库连接Connenntion
Connection connection = dataSource.getConnection();

System.out.println(connection);//测试

​ 最后运行即可,成功连接,打印出JDBC的连接对象,结果如图

在这里插入图片描述

最后这里附上全部代码

package com.itheima.druid;
import com.alibaba.druid.pool.DruidDataSourceFactory;

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

/*
* Druid数据库连接池演示
* */
public class DruidDemo {
    public static void main(String[] args) throws Exception {
        //1.导入jar包

        //2.定义配置文件

        //3.加载配置文件
        Properties prop = new Properties();
        prop.load(new FileInputStream("jdbc/jdbc-dame/src/main/java/com/druid.properties"));
        //4.获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);

        //5.获取数据库连接Connenntion
        Connection connection = dataSource.getConnection();

            System.out.println(connection);

//        System.out.println(System.getProperty("user.dir"));
    }
}
  • 24
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值