前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【JDBC】数据库连接池:德鲁伊druid的使用

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

作者头像
.29.
发布2022-11-15 14:05:51
1.8K0
发布2022-11-15 14:05:51
举报
文章被收录于专栏:个人技术博客

CSDN话题挑战赛第2期

参赛话题:学习笔记

作者🥇 .29. 🥇 的✔博客主页✔

JDBC专栏

(点击进入专栏)

【1】idea添加mysql-jar包

【2】使用IDEA连接数据库,执行增删改操作。

【3】IDEA连接数据库,执行查询操作,返回结果集并输出。

【4】JDBC实战 水果库存系统 [设计阶段]

【5】 水果库存系统 [功能实现①](接口实现类FruitDAOImpl)

【6】 水果库存系统 [功能实现②] 功能完善+使用效果

【7】 水果库存系统 [代码优化]

【8】连接数据库,执行批处理操作。

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


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

一、德鲁伊jar包导入

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

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

。。。

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

。。。

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

。。。

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

。。。

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

👇👇👇

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


二、创建配置文件

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

。。。

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

代码语言:javascript
复制
#驱动位置
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对象来读取配置文件中的信息:

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

四、创建Druid数据库连接池

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

代码语言:javascript
复制
DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);

五、建立连接 与 关闭连接

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

代码语言:javascript
复制
//创建连接对象
Connection connection = dataSource.getConnection();

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

六、完整代码

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

代码语言:javascript
复制
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();
        }

    }
} 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JDBC专栏
    • 数据库连接池:德鲁伊druid的使用
    • 一、德鲁伊jar包导入
    • 二、创建配置文件
    • 三、读取配置文件
    • 四、创建Druid数据库连接池
    • 五、建立连接 与 关闭连接
    • 六、完整代码
    相关产品与服务
    数据库
    云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档