【JDBC】数据库连接池:德鲁伊druid的使用

CSDN话题挑战赛第2期
参赛话题:学习笔记

在这里插入图片描述

在这里插入图片描述

求关注⚽ 作者 .29. 的✔博客主页✔

JDBC专栏

(点击进入专栏)
【1】idea添加mysql-jar包
【2】使用IDEA连接数据库,执行增删改操作。
【3】IDEA连接数据库,执行查询操作,返回结果集并输出。
【4】JDBC实战 水果库存系统 [设计阶段]
【5】 水果库存系统 [功能实现①](接口实现类FruitDAOImpl)
【6】 水果库存系统 [功能实现②] 功能完善+使用效果
【7】 水果库存系统 [代码优化]
【8】连接数据库,执行批处理操作。
【9】数据库连接池:德鲁伊druid的使用


数据库连接池:德鲁伊druid的使用

  • JDBC专栏
  • 一、德鲁伊jar包导入
  • 二、创建配置文件
  • 三、读取配置文件
  • 四、创建Druid数据库连接池
  • 五、建立连接 与 关闭连接
  • 六、完整代码

一、德鲁伊jar包导入

我们需要使用druid数据库连接池,首先就是要导入druid的jar包,我已经为兄弟们准备好jar包啦,直接下载即可。

链接:https://pan.baidu.com/s/12G_2TueHQZynSH2C9WfwMg
提取码:djar

。。。

下载完成后,我们直接Ctrl + c复制,然后Ctrl + v拷贝到我们在IDEA项目文件准备好的lib模块中。

【JDBC】数据库连接池:德鲁伊druid的使用_第1张图片

。。。

右键我们的lib模块,将其设置为依赖:

【JDBC】数据库连接池:德鲁伊druid的使用_第2张图片

。。。

选择OK,成功设置为依赖:

【JDBC】数据库连接池:德鲁伊druid的使用_第3张图片

。。。
当我们要使用德鲁伊的依赖时,还需要在项目结构中,绑定lib的模块依赖,点击左上角的File,选择Project Structure,后选择Modules,在Dependencies界面给需要的文件添加依赖。

【JDBC】数据库连接池:德鲁伊druid的使用_第4张图片

【JDBC】数据库连接池:德鲁伊druid的使用_第5张图片

这样,Druid jar包就导入完成啦…


二、创建配置文件

我们的配置文件需要在模块中的src包下创建或导入:

【JDBC】数据库连接池:德鲁伊druid的使用_第6张图片

。。。
上图中的jdbc2.properties就是我创建的配置文件,当然名字是没有限制的,但是配置文件的后缀应当是.properties,我们接下来看一下配置文件中的内容:

#驱动位置
driverClassName = com.mysql.cj.jdbc.Driver
#通信地址
url=jdbc:mysql://localhost:3306/fruitdb?useSSL=false&useUnicode=true&characterEncoding=gbk&rewriteBatchedStatements=true
#用户名
username=root
#密码
password=123456
#初始化连接数
initialSize=2
#最大连接数
maxActive=5
#最大等待时间(毫秒)
maxWait=5000

需要注意:配置文件中各种参数名不能随意取,只有像文中这样的参数名才能被识别。


三、读取配置文件

接下来,我们需要创建Properties对象来读取配置文件中的信息:

        //创建Properties对象
        Properties properties = new Properties();
        //创建输入流,获取配置文件中的数据
        InputStream is = Demo06Druid.class.getClassLoader().getResourceAsStream("jdbc2.properties");
        //使用Properties对象来读取配置文件
        //load中需要InputStream
        properties.load(is);

四、创建Druid数据库连接池

创建指定参数的数据库连接池,将Properties对象传入,获得Druid数据库连接池:


DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);


五、建立连接 与 关闭连接

注意:这里的关闭连接操作并不是真正地断开了与数据库的连接,而是将连接对象重新放入数据库连接池中,等待下一次的使用。

//创建连接对象
Connection connection = dataSource.getConnection();

//关闭连接
connection.close();

六、完整代码

代码中的循环是测试用的:

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

import java.util.Properties;

/**
 * @author .29.
 * @create 2022-09-26 18:42
 */
//读取外部配置文件,设置连接池
public class Demo06Druid {
    public static void main(String[] args) throws Exception {
        //创建Properties对象
        Properties properties = new Properties();
        //创建输入流,获取配置文件中的数据
        InputStream is = Demo06Druid.class.getClassLoader().getResourceAsStream("jdbc2.properties");
        //使用Properties对象来读取配置文件
        //load中需要InputStream
        properties.load(is);

        DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);


        for(int i = 0;i < 500000;++i){
            Connection connection = dataSource.getConnection();
            connection.close();
        }

    }
}

求关注⚽ 作者 .29. 的✔博客主页✔

【JDBC】数据库连接池:德鲁伊druid的使用_第7张图片

你可能感兴趣的:(JDBC,数据库,intellij-idea,java)