Druid:数据库连接池实现技术,由阿里巴巴提供的
Druid:数据库连接池实现技术,由阿里巴巴提供的
1. 步骤:
1. 导入jar包 druid-1.0.9.jar
2. 定义配置文件:
* 是properties形式的
* 可以叫任意名称,可以放在任意目录下
3. 加载配置文件。Properties
4. 获取数据库连接池对象:通过工厂来来获取 DruidDataSourceFactory
5. 获取连接:getConnection
* 代码:
//3.加载配置文件
Properties pro = new Properties();
InputStream is = DruidDemo.class.getClassLoader().getResourceAsStream("druid.properties");
pro.load(is);
//4.获取连接池对象
DataSource ds = DruidDataSourceFactory.createDataSource(pro);
//5.获取连接
Connection conn = ds.getConnection();
2. 定义工具类
1. 定义一个类 JDBCUtils
2. 提供静态代码块加载配置文件,初始化连接池对象
3. 提供方法
1. 获取连接方法:通过数据库连接池获取连接
2. 释放资源
3. 获取连接池的方法
package cn.itcast.util;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;
import java.io.*;
import java.net.URL;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Objects;
import java.util.Properties;/*** @author KuKaFei.Hai* @date 2020/5/9 : 17:11*/
public class JDBCDruid {//定义一个成员变量/*** 定义一个连接池变量*/private static DataSource ds;static {//加载配置文件try {//生成一个配置文件对象,这个是因为,Druid中的工厂方法,需要传一个配置文件对象Properties pro = new Properties();//加载配置文件//InputStream rs = JDBCDruid.class.getClassLoader().getResourceAsStream("druid.properties");// System.out.println(rs);pro.load(Objects.requireNonNull(JDBCDruid.class.getClassLoader().getResourceAsStream("druid.properties")));//pro.load(rs);//通过连接池工厂,创建连接池ds = DruidDataSourceFactory.createDataSource(pro);} catch (Exception e) {e.printStackTrace();}}/*** 通过连接池,获取conn 对象* @return 返回一个 Connection对象* @throws SQLException 存在异常*/public static Connection getConnectionByDruid() throws SQLException {return ds.getConnection();}/*** 获取连接池* @return 返回一个连接池对象*/public static DataSource getDataSource(){return ds;}/*** 关闭 非查询连接* @param stmt Statement* @param conn Connection*/public static void closeAll(Statement stmt,Connection conn){if(stmt!=null){try {stmt.close();} catch (SQLException e) {e.printStackTrace();}}if(conn!=null){try {conn.close(); // 这里不是关闭连接,而是归还到连接池中} catch (SQLException e) {e.printStackTrace();}}}/*** 关闭 查询连接* @param rs ResultSet* @param stmt Statement* @param conn Connection*/public static void closeAll(ResultSet rs,Statement stmt,Connection conn){if(rs!=null){try {rs.close();} catch (SQLException e) {e.printStackTrace();}}closeAll(stmt,conn);}}
Druid:数据库连接池实现技术,由阿里巴巴提供的相关推荐
- Druid:数据库连接池实现技术
Druid:数据库连接池实现技术,由阿里巴巴提供的 1. 步骤: 1. 导入jar包 druid-1.0.9.jar 2. 定义配置文件: * ...
- Druid:数据库连接池实现技术 1
5 Druid:数据库连接池实现技术,由阿里巴巴提供* 步骤:1.导入jar包 druid-1.0.9.jar mysql-connector-java-8.0.22.jar2.定义配置文件:* 是p ...
- Mysql实现监控数据统计分析:Druid开源分布式系统与阿里巴巴的Druid数据库连接池
看到Druid很多国内的开发者所熟知的就是阿里巴巴提供的开源数据库连接池工具.如果看了这篇文章还认为Druid仅仅是一个阿里巴巴提供的开源数据库连接池工具那么就错了,它或许指的是用于大数据实时处理的开 ...
- Spring Boot之使用阿里巴巴Druid数据库连接池(数据源)
作者:谭东 Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JDBC兼容数据库,包括了Oracle.MySQL.PostgreSQL.SQL Server.H2等.D ...
- 阿里巴巴 Druid 数据库连接池监控界面配置的参数解读
阿里巴巴 Druid 数据库连接池监控界面配置的参数解读 1.可选的配置项 Property Name Default Value Remarks name 存在多个数据源的时候用于识别数据源 jdb ...
- Druid数据库连接池监控的使用
Druid数据库连接池 1. Druid是什么? Druid是Java语言中最好的数据库连接池,由阿里巴巴团队开发.Druid能够提供强大的监控和扩展功能. github地址为http ...
- Druid数据库连接池就这么简单
前言 本章节主要讲解Druid数据库连接池,为什么要学Druid数据库连接池呢?? 我的知识储备数据库连接池有两种->C3P0,DBCP,可是现在看起来并不够用阿~当时学习C3P0的时候,觉得这 ...
- Druid数据库连接池就是这么简单
前言 本章节主要讲解Druid数据库连接池,为什么要学Druid数据库连接池呢?? 我的知识储备数据库连接池有两种->C3P0,DBCP,可是现在看起来并不够用阿~当时学习C3P0的时候,觉得这 ...
- java银行管理系统(MySql+JDBC+数据库(Druid数据库连接池)+GUI)重要代码有解析注释
java银行管理系统 小白又来水博客了 文章目录 java银行管理系统 一.项目需求与分析: 二.知识及有关技术的概述: 三.银行管理系统需求的具体实现: 四.部分功能预览: 五.Last: 一.项目 ...
最新文章
- R语言union函数计算数据对象(vector、list、dataframe)的并集:union函数计算两个vector向量、dataframe、列表list的并集
- 4月25日日志(4.25)
- Linux的nm查看动态和静态库中的符号
- minst0-9对应81-30-3的特征频率曲线
- mysql cluster cge (commercial)_Mysql 产品分类和版本说明
- 语音聊天室 html,聊天室 - HTML - php中文网博客
- Sonata 0.7
- 实际应用中带头节点的线性链表
- python crm_Python CRM项目一
- STM32工作笔记0095---MDK KEIL5宏定义报红叉
- dojo 十 ajax dojo/_base/xhr
- Docker 如何支持多种日志方案?- 每天5分钟玩转 Docker 容器技术(88)
- Uni-G/ The University of Glasgow (Uni-G) ECG Analysis Program
- scala-传名函数和传值函数
- 设计模式 ( 十五 ) 模板方法模式
- 大话uboot 移植
- android实现按键找图功能,从零学起之安卓篇《按键精灵安卓版找图找色应用汇总介绍》更新20140603 _ 教程中心 - 按键精灵论坛...
- 计算机关机后风扇还转,小编教你电脑关机后CPU风扇还在转怎么解决
- 研究生初学机器学习的几点建议
- 还在用 Guava Cache?它才是 Java 本地缓存之王!
热门文章
- 小鹏汽车遭多地车主维权 要求退车 孙宇晨:个人拿1000万支持维权
- 华为:对学生定制机毫不知情 将会对虚假宣传追责
- 支付宝上线“老年版相互宝”:爸妈终于可以加入了
- 程序员想早点下班被经理拒绝,一气之下要辞职,经理慌了
- shell 12 21 filename重定向的含义和区别
- 提高Android Studio运行、编译速度方案
- 计算机应用基础形成性考核作业,计算机应用基础形成性考核作业1
- 【kafka】支持超高并发的kafka网络设计
- 【antlr】antlr语法中的fragment
- 【yarn】INFO ipc.Client Retrying connect to server xxx 8032 Already tried 0 time(s)