JDBC系列--数据库连接池

简介: JDBC系列--数据库连接池

概念


其实就是一个容器(集合),存放数据库连接的容器

当系统初始化好后,容器被初始化,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完后,会将连接对象返回给容器


好处


节约资源

高效


实现


标准的接口:DataSource javax.sql包下的

方法:

获取连接:getConnection()

归还连接:Connection.close().如果连接对象Connection是从连接池中获取的,那么调用Connection.close()不在是关闭连接,而是归还连接

2.这个接口,一般不由人为实现,而是有数据库厂商来实现

C3P0:数据库连接池技术

Druid:数据库连接池实现技术,由阿里提供


一、C3P0:数据库连接池技术


步骤:


1.导入jar包


c3p0-0.9.5.2.jar

mchange-commons-java-0.2.12.jar

还有驱动jar包


2.定义配置文件


名称:c3p0.properties或者c3p0-config.xml

路径:直接将文件放在src目录下即可


3.创建核心对象


数据库连接池对象 ComboPoolDataSource


4.获取连接


getConnection

了解即可


二、Druid:数据库连接池实现技术


1.写入jar包


druid-1.e.9.jar


2.定义配置文件


是properties形式的(properties 性能) 可以叫任意名称,可以放在任意目录下


3.获取数据库连接池对象:通过工厂类来获取


DruidDataSourceFactory


4.获取连接


getConnection


5.实例


package com.caq.datasource.druid;
 import com.alibaba.druid.pool.DruidDataSourceFactory;
 import javax.sql.DataSource;
 import java.io.InputStream;
 import java.sql.Connection;
 import java.util.Properties;
 public class DruidDemo01 {
     public static void main(String[] args) throws Exception {
         //1.导入Jar包
         //2.定义配置文件
         //3.加载配置文件
         Properties pro = new Properties();
         InputStream is = DruidDemo01.class.getClassLoader().getResourceAsStream("druid.properties");//得到输出流
         pro.load(is);//获取文件的路径
         //4.获取连接池对象
         DataSource ds = DruidDataSourceFactory.createDataSource(pro);
         //5.获取连接
         Connection conn = ds.getConnection();
         System.out.println(conn);
     }
 }
 输出结果为:
 十月 20, 2021 10:32:02 下午 com.alibaba.druid.pool.DruidAbstractDataSource error
 严重: maxIdle is deprecated
 十月 20, 2021 10:32:03 下午 com.alibaba.druid.pool.DruidDataSource info
 信息: {dataSource-1} inited
 com.mysql.jdbc.JDBC4Connection@6956de9



相关文章
|
5月前
|
Java 关系型数据库 数据库连接
JDBC:Java与数据库的“黄金搭档”,为何它如此重要?
JDBC:Java与数据库的“黄金搭档”,为何它如此重要?
54 8
|
5月前
|
Java 数据库连接 API
JDBC:Java数据库连接的“黑科技”大揭秘
JDBC:Java数据库连接的“黑科技”大揭秘
44 7
|
11天前
|
SQL Java 数据库连接
JDBC编程安装———通过代码操控数据库
本文,教你从0开始学习JBCD,包括驱动包的下载安装调试设置,以及java是如何通过JBDC实现对数据库的操作,以及代码的分析,超级详细
|
3月前
|
SQL Java 数据库
Springboot+spring-boot-starter-data-jdbc实现数据库的操作
本文介绍了如何使用Spring Boot的spring-boot-starter-data-jdbc依赖来操作数据库,包括添加依赖、配置数据库信息和编写基于JdbcTemplate的数据访问代码。
286 2
|
3月前
|
SQL druid Java
JDBC和数据库连接池-两个工具类-JDBCUtilsByDruid和BasicDAO
JDBC和数据库连接池-两个工具类-JDBCUtilsByDruid和BasicDAO
117 0
|
5月前
|
Java 数据库连接 网络安全
JDBC数据库编程(java实训报告)
这篇文章是关于JDBC数据库编程的实训报告,涵盖了实验要求、实验环境、实验内容和总结。文中详细介绍了如何使用Java JDBC技术连接数据库,并进行增删改查等基本操作。实验内容包括建立数据库连接、查询、添加、删除和修改数据,每个部分都提供了相应的Java代码示例和操作测试结果截图。作者在总结中分享了在实验过程中遇到的问题和解决方案,以及对Java与数据库连接操作的掌握情况。
JDBC数据库编程(java实训报告)
|
5月前
|
SQL Java 数据库连接
JDBC之旅:从陌生到熟悉的Java数据库连接之路
JDBC之旅:从陌生到熟悉的Java数据库连接之路
37 9
|
5月前
|
SQL druid Java
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
67 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
|
5月前
|
SQL Java 关系型数据库
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
213 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
|
5月前
|
SQL Java 数据库连接
Java开发者必知:JDBC连接数据库的“三大法宝”
Java开发者必知:JDBC连接数据库的“三大法宝”
47 7