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

简介: 学习数据库连接池:德鲁伊druid的使用。

一、德鲁伊jar包导入


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


链接:https://pan.baidu.com/s/12G_2TueHQZynSH2C9WfwMg

提取码:djar


。。。


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

微信图片_20221030184902.png

。。。


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

微信图片_20221030184908.png

。。。


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

微信图片_20221030184916.png



。。。

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

微信图片_20221030184921.png


👇👇👇

微信图片_20221030184927.png


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


二、创建配置文件


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

微信图片_20221030184933.png

。。。

上图中的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. 🥇 的✔博客主页✔

微信图片_20221029111446.jpg




目录
相关文章
|
7月前
|
SQL Java 数据库连接
除了JDBC,还有哪些常见的数据库访问技术?
除了JDBC,还有哪些常见的数据库访问技术?
621 2
|
Java 关系型数据库 数据库连接
JDBC:Java与数据库的“黄金搭档”,为何它如此重要?
JDBC:Java与数据库的“黄金搭档”,为何它如此重要?
185 8
|
SQL druid Oracle
【YashanDB知识库】yasdb jdbc驱动集成druid连接池,业务(java)日志中有token IDENTIFIER start异常
客户Java日志中出现异常,影响Druid的merge SQL功能(将SQL字面量替换为绑定变量以统计性能),但不影响正常业务流程。原因是Druid在merge SQL时传入null作为dbType,导致无法解析递归查询中的`start`关键字。
|
SQL Java 关系型数据库
使用 JDBC 实现 Java 数据库操作
JDBC(Java Database Connectivity)是 Java 提供的数据库访问技术,允许通过 SQL 语句与数据库交互。本文详细介绍了 JDBC 的使用方法,包括环境准备、编程步骤和完整示例。
1217 7
|
SQL Java 数据库连接
【YashanDB数据库】由于网络带宽不足导致的jdbc向yashandb插入数据慢
由于网络带宽不足导致的jdbc向yashandb插入数据慢
|
SQL Java 数据库连接
JDBC编程安装———通过代码操控数据库
本文,教你从0开始学习JBCD,包括驱动包的下载安装调试设置,以及java是如何通过JBDC实现对数据库的操作,以及代码的分析,超级详细
|
SQL druid Java
JDBC和数据库连接池-两个工具类-JDBCUtilsByDruid和BasicDAO
JDBC和数据库连接池-两个工具类-JDBCUtilsByDruid和BasicDAO
651 0
|
SQL Java 数据库连接
从一名对数据库连接操作一无所知的新手,逐渐成长为能够熟练驾驭JDBC的开发者
在充满代码与逻辑的世界中,我从一名对数据库操作一无所知的新手,逐步成长为熟练掌握JDBC的开发者。这段旅程充满挑战与惊喜,从建立连接到执行SQL语句,再到掌握事务管理和批处理等高级功能,每一步都让我对JDBC有了更深的理解。示例代码展示了如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。这段经历不仅提升了我的技术能力,更让我领略到编程之美与解决问题的乐趣。
152 0