数据源(DataSource)
制SUN制定的用于获取数据库连接的规范接口。
它存在于 javax.sql包中,用来代替 DriverManager 的方式
来获取连接。

DataSource 与 DriverManager 获取连接的不同:
a).DriverManager是由SUN实现的,它只供了最基本的获取
   连接的方式。
   而DataSource是一个接口,不光SUN可以实现,很多第三方
   的中间件也可以实现,而且实现得很好。

DataSource一般有如下三种实现方式:
  标准实现 -- 提供最基本的连接,也就是DriverManager的方式
  连接池的实现 -- 提供了连接池,是一种可以缓存及管理多个
    数据库连接的“容器”。
  分布事务的实现 -- 提供了连接池,而且这个池中的连接是
  支持分布式事务的(Distribute Transaction)

一般来说,DataSource 都会由专业的中间件(MiddleWare)来实现。
当然,也有一些开源(免费)的 DataSource的实现。
最有名就是:Apache 组织提供的 commons-dbcp

--

建议,今后都使用 DataSource 来获取连接。

数据源 与 连接池 的关系
数据源(DataSource)是由SUN制定的一个规范(获取数据库连接的规范),

连接池是数据源规范一种比较主流、重要的实现。

使用 commons-dbcp 组件来建立数据源
它依赖于:
   commons-dbcp-1.4.jar
   commons-pool-1.6.jar
两个jar 文件。

核心类:
BasicDataSource 实现了 javax.sql.DataSource 接口。

--

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/ja0218
username=root
password=1234
#最大连接数量:连接池在同一时间能够分配的最大活动连接的数量,,如果设置为非正数则表示不限制,默认值8
maxActive=15
#最小空闲连接:连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为0则不创建,默认值0
minIdle=5
#最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制,默认值8
maxIdle=10
#初始化连接数:连接池启动时创建的初始化连接数量,默认值0
initialSize=5
#连接被泄露时是否打印
logAbandoned=true
#是否自动回收超时连接
removeAbandoned=true
#超时时间(以秒数为单位)
removeAbandonedTimeout=180
# 最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为-1表示无限等待,默认值无限
maxWait=3000
#在空闲连接回收器线程运行期间休眠的时间值(以毫秒为单位).
timeBetweenEvictionRunsMillis=10000
#在每次空闲连接回收器线程(如果有)运行时检查的连接数量
numTestsPerEvictionRun=8
#连接在池中保持空闲而不被空闲连接回收器线程
minEvictableIdleTimeMillis=10000
#用来验证从连接池取出的连接
validationQuery=SELECT 1
#指明是否在从池中取出连接前进行检验
testOnBorrow=true
#testOnReturn  false  指明是否在归还到池中前进行检验
testOnReturn=true

数据源(DataSource)相关推荐

  1. mysql datasource.url_SpringBoot配置数据源DataSource

    使用properties文件配置springboot默认数据源 这种方式十分简单,只用在application.properties文件中配置数据库连接属性即可. spring.datasource. ...

  2. 【spring boot】 禁用/关闭数据源/DataSource

    前言 spring boot 2.0.0.RELEASE maven 3.5 eclipse 4.9.0 用spring boot做程序,不需要连接数据库.该程序一直工作正常. 在某次修改程序后,出现 ...

  3. 配置数据源(DataSource)

    DataSource对象是由Tomcat提供的,因此不能在程序中采用创建一个实例的方式来生成DataSource对象. 所以数据源的配置涉及修改server.xml(Tomcat)和web.xml文件 ...

  4. 自定义配置数据源 DataSource

    1 . 直接看代码 自定义数据源类 package com.qf.ds; import java.io.PrintWriter; import java.sql.Connection; import ...

  5. wildfly mysql xa_wildfly jobss 同时连接多个数据源 datasource xa-datasource

    由于需要从一个远程机器取数据.处理后保存到本地数据库处理.用 wildfly datasource 会报: [com.arjuna.ats.arjuna] (default task-6) ARJUN ...

  6. 数据源(DataSource)是什么以及SpringBoot中数据源配置

    数据源 数据源,简单理解为数据源头,提供了应用程序所需要数据的位置.数据源保证了应用程序与目标数据之间交互的规范和协议,它可以是数据库,文件系统等等.其中数据源定义了位置信息,用户验证信息和交互时所需 ...

  7. DataSource数据源定义

    DataSource数据源定义 1.什么是数据源 JDBC2.0 提供了javax.sql.DataSource接口,它负责建立与数据库的连接,当在应用程序中访问数据库时不必编写连接数据库的代码,直接 ...

  8. Asp.net 2.0 自定义控件开发专题讲解[为用户控件增加DataSource属性, 能够自动识别不同数据源](示例代码下载)...

    (一).  概要 开发<数据绑定用户控件>, 要实现一个DataSource属性, 并且能够自动识别不同的数据源, 如: ArrayList, DataTable, DataSet, XM ...

  9. DataSource数据源简单理解

    DataSource数据源简单理解 因为热爱,所以拼搏. –RuiDer 什么是数据源 JDBC2.0 提供了javax.sql.DataSource接口,它负责建立与数据库的连接,当在应用程序中访问 ...

最新文章

  1. DiscuzX 论坛首页 和 分 区设置版块横排
  2. Ros学习调试——rqt_console
  3. VMware VCP
  4. 中国制鞋机械行业市场“十四五”规划模式及项目投资分析报告2022-2028年版
  5. 第四章:手机平板要兼顾-探究碎片
  6. cal css,CSS calc计算属性
  7. [Python爬虫] 之十八:Selenium +phantomjs 利用 pyquery抓取电视之家网数据
  8. IGMP协议——IP组播之组管理协议
  9. HTML语言的一些元素(二)
  10. Windows XP下使用 whoami 命令
  11. php获取h5视频直链,一种H5播放实时视频的方法与系统与流程
  12. 乐得瑞PD快充方案可解Surface充电燃眉之急——专业PD方案厂家
  13. PCB软件对比分析(AD、Pads、Allegro)
  14. 2021年中国互联网网民规模及互联网普及率情况:网民总体规模持续增长,城乡地区互联网普及率差异减小[图]
  15. GCC详解的-Wl选项说明与测试
  16. pap认证过程_思科课件8、PAP认证、CHAP认证
  17. Minecraft开服器(Python编写)
  18. hexo引用本地图片无法显示
  19. 谷歌老程序员的补丁和中国中年程序员的焦虑,区别到底在哪?
  20. Java码农进阶之路~数组的深进浅出

热门文章

  1. SourceTree 3x版本跳过登录
  2. mysql 按位取反_关于PHP中按位取反问题
  3. python画桃花_Python小白如何使用爬虫自动抓取《三生三世十里桃花》豆瓣电影短评...
  4. 2011各大公司薪资一览表,看后你是不是生活更有动力了呢?
  5. 建筑行业迎来巨变,资质整合之后,企业难以生存?
  6. python画企鹅_相信你也可以,一文学会如何用Python绘制分块图
  7. python loads的用法_Python中json.loads方法
  8. HP CQ 42 系列笔记本更改默认快捷键
  9. R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、估计(Propensity score)
  10. Win10无法重置电脑(找不到恢复环境,需要重装介质)