/**
  * @Description: TODO(这里用一句话描述这个类的作用)
  * @Author aikang
  * @Date 2019/8/26 20:12
  */
 /*
 1.数据库连接池:
     1.概念:其实就是一个容器(集合),存放数据库连接的容器
           当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完后将连接对象归还容器
     2.好处:
         1.节约资源
         2.用户访问高效
     3.实现:
         1.标准接口:DataSource javax.sql包下的
             1.方法:
                 获取连接:getConnection()
                 归还连接:如果连接对象Connection是从连接池中获取的,name调用Connection.close()方法,则不会再关闭连接了,而是归还连接
         2.一般我们不去实现它,由数据库厂商来实现
             1.c3p0:数据库连接池技术
                 1.步骤:
                     1.导入jar包,两个
                     2.定义配置文件:
                         名称:c3p0.properties or c3p0-config.xml
                         路径:直接将文件放在src目录下即可
                     3.创建核心对象:数据库连接池对象ComboPooledDataSource
                     4.获取连接:getConnection()*/

             /*2.Druid:数据库连接池实现技术,由阿里巴巴提供的
                 1.步骤:
                     1.导入jar包
                     2.定义配置文件
                         1.是properties
                         2.可以叫任意名称,可以放置任意目录
                         加载配置文件
                         1 = new properties
                         2 = 本类.class.getClassLoader.getResourceAsStream(文件名)
                         3 = 1.load(2)
                         获取连接池对象
                         4 = DruidDataSourceFactory.createDataSource(1)
                         获取连接
                         4.getConnection
                     3.获取数据库连接池对象,通过工厂类获取 DruidDataSourceFactory
                     4.获取连接:getConnection()*/
 public class JDBCTest02 {
     public static void main(String[] args) throws Exception {
         // 1.导入jar包
         //2.定义配置文件
         //3.加载配置文件
         Properties properties = new Properties();
         InputStream druid = JDBCTest02.class.getClassLoader().getResourceAsStream("druid.properties");
         properties.load(druid);
         //4.获取连接池对象
         DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);
         //5.获取连接
         Connection connection = dataSource.getConnection();
         System.out.println(connection);
     }
 }

JDBC_数据库连接池DRUID的更多相关文章

  1. 数据库连接池druid

    推荐一个带监控的数据库连接池druid,阿里的,据说比c3p0连接池性能要好点,主要是带sql,spring,uri等访问监控,比较直观地址: https://github.com/alibaba/d ...

  2. 项目重构之数据源配置与优化:log4j 配置数据库连接池Druid,并实现日志存储到数据库

    作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...

  3. [转]阿里巴巴数据库连接池 druid配置详解

    一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...

  4. Spring Boot 数据库连接池 Druid

    简介 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问 ...

  5. 阿里巴巴数据库连接池 druid配置详解

    一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...

  6. 数据库连接池——Druid

    使用步骤: 1.导包,durid1.0.9 jar包 2.定义配置文件,properties文件,名字任意位置也任意, 3.加载文件 4.获得数据库连接池对象  通过DuridDataSourceFa ...

  7. spring配置数据库连接池druid

    连接池原理 连接池基本的思想是在系统初始化的时候,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象.使用完毕后,用户也并非将连 ...

  8. 数据库连接池----Druid配置详解

    什么是连接池? 数据库连接池出现的原因在数据库连接资源的低效管理,使用数据库连接池是基于设计模式中的资源池的概念,从而解决资源频繁是分配.释放所造成的问题. 数据库连接池的基本思想就是为数据库连接建立 ...

  9. 数据库连接池--druid

    数据库连接池常用的有:dbcp,c3p0,druid 代码仓库(https://github.com/) package com.huawei.test; import java.sql.Connec ...

随机推荐

  1. super_blocks没有导出

    在模块中,通过查询super_blocks列表,来遍历系统中的所有super_block,但是出现与下面类似的错误: http://stackoverflow.com/q/5051111/941650 ...

  2. new delete

    malloc/free是标准的库函数,而new/delete是操作符 匹配使用原则:malloc(calloc/realloc)和free 以及new/new[] 和delete/delete[]; ...

  3. 绿盟-WEB应用漏洞扫描系统

    ************************************************** WEB应用漏洞扫描系统 一.工具的介绍与使用 ************************** ...

  4. 20140613 Opencv重新编译 word小技巧

    1.OPENCVGPU重新编译+自己的文件 注意点: 1.生成OPENCV.sln解决方案后,在ALL_build的属性中,添加相应目录: ALL_BUILD中的Debug和Release上的Micr ...

  5. Til the Cows Come Home(spfa做法)

    题目题目描述贝茜在谷仓外的农场上,她想回到谷仓,在第二天早晨农夫约翰叫她起来挤奶之前尽可能多地睡上一觉.由于需要睡个好觉,贝茜必须尽快回到谷仓.农夫约翰的农场上有N(2≤N≤1000)个路标,每一个路 ...

  6. 令人清爽的异步函数async、await

    1.什么是async.await? async用于声明一个函数是异步的.而await从字面意思上是"等待"的意思,就是用于等待异步完成.并且await只能在async函数中使用; ...

  7. Handler Looper源码解析(Android消息传递机制)

    Android的Handler类应该是常用到的,多用于线程间的通信,以及子线程发送消息通知UI线程刷新View等等.这里我主要总结下我对整个消息传递机制,包括Handler,Looper,Messag ...

  8. Python 文件名

  9. Mysql优化-分区

    分区简介 分区是根据一定的规则,数据库把一个表分解成多个更小的.更容易管理的部分.就访问数据库应用而言,逻辑上就只有一个表或者一个索引,但实际上这个表可能有N个物理分区对象组成,每个分区都是一个独立的 ...

  10. Python中使用gflags

    安装命令pip install python-gflags 使用示例: import gflags FLAGS = gflags.FLAGS gflags.DEFINE_string('name', ...