利用Druid连接池获得数据库连接(得到一个连接对象):

package com.hk.utils;

import com.alibaba.druid.pool.DruidDataSource;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import java.io.IOException;

import java.io.InputStream;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.Properties;

public class DbUtils {

private static DruidDataSource druidDataSource;

//初始化德鲁伊连接池

static {

//getClassLoader();得到类加载器对象(单例)

InputStream is = DbUtils.class.getClassLoader().getResourceAsStream("druid.properties");//得到信息流

Properties properties = new Properties();//配置文件对象

try {

properties.load(is);//读取配置文件

is.close();

druidDataSource = (DruidDataSource) DruidDataSourceFactory.createDataSource(properties);//加载配置文件,获取德鲁伊连接池

} catch (IOException e) {

e.printStackTrace();

} catch (Exception e) {

e.printStackTrace();

}

}

//获取数据库连接对象

public static Connection getConnection() {

Connection conn = null;

try{

conn = druidDataSource.getConnection();

}catch (Exception ex) {

ex.printStackTrace();

}

return conn;

}

//关闭结果集和数据库处理对象(或预处理对象)和数据库连接对象(数据连接池本质上不会被关闭)

public static void close(ResultSet rs, Statement statement, Connection conn) {

try{

if(null != rs) {

rs.close();

}

if(null != statement) {

statement.close();

}

if(null != conn) {

conn.close();

}

}catch (Exception ex) {

ex.printStackTrace();

}

}

}

配置文件信息:

driverClassName=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/javaweb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai

username=root

password=123456

#初始化的时候,连接池中放多少个连接

initialSize=10

# 最大存货的连接数量

maxActive=50

#最小空闲数量

minIdle=5

#配置获取连接等待超时的时间

maxWait=10000

#验证连接池中的连接是否有效的sql语句

validationQuery='select 1'

#在获取连接的时候,验证拿到连接是否为有效连接

testOnBorrow=false

#在归还连接的时候,验证是否为有效连接

test-on-return=false

#空闲的时候验证是否有效

test-while-idle=true

java 的德鲁伊连接池_德鲁伊连接池-Druid相关推荐

  1. java 连接池_初探数据库连接池

    参考资料 数据库连接池学习笔记(一):原理介绍+常用连接池介绍 java数据库连接池实现原理 高性能数据库连接池的内幕 1. 为什么要使用连接池 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户 ...

  2. java 实现 内存池_从连接池到内存池

    注:内容微调,修改标题,让题文匹配. 如果将互联网应用比喻成冲浪的话, 可能需要先学会在"池"中游泳. 引子 AI赋能万物,老码农的伙伴们也曾经开发了一个基于图数据库的知识问答系统 ...

  3. mybatis连接mysql数据库连接池_对于数据库连接池的一些思考和MyBatis的集成与使用...

    Java应用要连接数据库需要先通过jdbc与数据库之间产生connection,然后通过sql语句产生statment,再执行这个statment查询的到ResultSet返回给应用,应用解析Resu ...

  4. JAVA线程池_并发队列工作笔记0002---认识线程池_在线程池中使用队列

    技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 上面是线程的执行周期 这个线程的生命周期,可以看到时间都浪费在了创建和销毁的这里了. 实际上执行业 ...

  5. 动态调整线程池_调整线程池的重要性

    动态调整线程池 无论您是否知道,您的Java Web应用程序很可能都使用线程池来处理传入的请求. 这是许多人忽略的实现细节,但是迟早您需要了解如何使用该池以及如何为您的应用程序正确调整池. 本文旨在说 ...

  6. 微服务 mysql 连接池_【mysql】druid,连接池和微服务的问题

    我所知道的 druid 配置,是在一个服务上进行配置 假如一台机器上装有 mysql 当我们用连接池去连接的时候 根据 https://blog.csdn.net/w059805- 说法 连接池的大小 ...

  7. SpringCloud工作笔记052---各种数据库在java中的连接配置_以及连接驱动

    JAVA技术交流QQ群:170933152 # Properties file with JDBC-related settings. ########## # HSQLDB # ########## ...

  8. cassandra本地连接失败_无法连接到本地Cassandra实例?

    我是 Cassandra 的新手,所以这是一个非常基本的问题 . 对于我的项目,我需要一个旧版本的Cassandra,所以我安装它是这样的: brew install python brew inst ...

  9. 连接查询_左连接/右连接/全连接的区别

    介绍表连接,更确切的说是inner joins內连接. 內连接仅选出两张表中互相匹配的记录.因此,这会导致有时我们需要的记录没有包含进来. 为更好的理解这个概念,我们介绍两个表作演示.苏格兰议会中的政 ...

最新文章

  1. javascript的Math对象和全局函数
  2. 网络程序开发实验报告
  3. POJ 3254 Corn Fields(状态压缩)
  4. 存储基础知识二 主要协议SCSI、FC、iSCSI
  5. 线程的特点 java 1615387415
  6. 在5分钟内学习Vuex
  7. c# hdf5 写string_Pandas系列之入门篇——HDF5
  8. 战神背光键盘如何关系_神舟战神K660E-i7D8红色背光键盘,深夜战火不熄!
  9. JAVA学习网站收集
  10. 斐讯k2搭建php环境,宿舍使用斐讯K2路由器详细设置步骤
  11. 计算机c盘要满了电脑会卡吗,电脑卡就一定是C盘装太满吗?
  12. 如何选择阿里云服务器?配置选购流程全解析
  13. 10.自动代理AutoProxy
  14. Truffle框架的初使用
  15. 1635 超大型 LED 显示屏
  16. imacros中使用变量
  17. 按址索骥,直捣黄龙-指针法在字符串str中每个ch2字符后都添加一个ch3字符
  18. [渗透教程]-006-渗透测试-Metasploit以及实战教程
  19. iOS获取文件夹下所有的文件
  20. 微信解封快手链接;AWS 证实宕机;微软内部疑禁用 Slack | 极客头条

热门文章

  1. Synch4j使用指南
  2. 【软件】网梭浏览器v2.4.7 思路
  3. 计网PPT 第八章 互联网上的音频和视频服务
  4. 转载蓝叠模拟器与android studio连接步骤
  5. 简单的爬取某租房网站租房信息并存入MySQL数据库
  6. FPGA零基础学习:数字通信中的电压标准
  7. 画家高俊飞——重彩《荷花》系列作品集赏析
  8. 折半查找并插入(在一个有序数组中通过二分查找数字,若存在,指出其是数组中第几个元素;反之插入数组并有序化)
  9. 七牛 savekey php,七牛云1:客户端直接上传文件
  10. vue手动封装分页组件