类似于线程池,这里用于管理数据库连接的容器
目录
一、数据库连接池简介
数据库连接池是个容器,负责分配、管理数据库连接(Connection)
它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;
释放空闲时间超过最大空闲时间的数据库连接,来避免因为没有释放数据库连接而引起的数据库连接遗漏。
- 好处
- 资源重用
- 提升系统响应速度
- 避免数据库连接遗漏
数据库连接池实现
二、Druid数据库连接池
德鲁伊 数据库 连接池 技术
Driud使用步骤
- 导入jar包 druid-1.1.12.jar
2、定义配置文件3、加载配置文件4、获取数据库连接池 对象5、获取连接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("src/druid.properties")); //4、获取连接池对象 DataSource dataSource = DruidDataSourceFactory.createDataSource(prop); //5、获取数据库连接 Connection Connection connection = dataSource.getConnection(); System.out.println(connection); } }
为什么会显示找不到路径,是因为有时候,这个路径有时候需要加模块的名称
如何便捷的查找文件的路径:(通用方式)
最终路径为:
路径加上模块后的路径:
如果说,这里的路径已经有了
jdbc-demo,那么路径就不用再加模块路径了
以上的配置是5X的配置文件
针对8.x的配置文件
第一、二行的变化
driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/db1?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username=root
password=1234
# 初始化连接数量
initialSize=5
# 最大连接数
maxActive=10
# 最大等待时间
maxWait=3000