dbcp数据源连接池
一.数据源连接池

/**
* 在main方法中使用dbcp获取数据库连接对象
*/
public class Test01 {
public static void main(String[] args) throws SQLException {
//创建连接池对象
BasicDataSource dataSource = new BasicDataSource();
//设置数据库的驱动(必选参数)
dataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver");
//设置数据库连接url(必选参数)
dataSource.setUrl("jdbc:oracle:thin:@localhost:1521:orcl");
//设置数据库连接的用户名(必选参数)
dataSource.setUsername("scott");
//设置数据库连接的密码(必选参数)
dataSource.setPassword("tiger");
//设置数据源连接池初始化连接数量
dataSource.setInitialSize(5);
//设置数据源连接池允许的最大连接数量
dataSource.setMaxTotal(8);
//设置数据源连接池最大空闲连接数量
dataSource.setMaxIdle(6);
//设置数据源连接池最小空闲连接数量
dataSource.setMinIdle(3);
//当数据源连接池连接已被用尽的时候,下一个要链接用户的最大等待时间 单位是毫秒 默认值是-1,是永远等待
dataSource.setMaxWaitMillis(5000L);
//获取数据库连接
Connection conn1 = dataSource.getConnection();
System.out.println(conn1);
System.out.println("连接池已经激活的连接数量:"+dataSource.getNumActive());
System.out.println("连接池空闲连接数量:"+dataSource.getNumIdle());
}
}

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--创建dbcp数据源连接池对象-->
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<!--驱动名-->
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<!--url-->
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
<!--用户名-->
<property name="username" value="scott"></property>
<!--密码-->
<property name="password" value="tiger"></property>
<!--初始化连接数量-->
<property name="initialSize" value="5"></property>
<!--最大连接数量-->
<property name="maxTotal" value="8"></property>
<!--最大空闲连接数量-->
<property name="maxIdle" value="6"></property>
<!--最小空闲连接数量-->
<property name="minIdle" value="3"></property>
<!--连接等待的最大时间 -->
<property name="maxWaitMillis" value="5000"></property>
</bean>
</beans>
public class Test01 {
public static void main(String[] args)throws Exception {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
BasicDataSource dataSource = (BasicDataSource)context.getBean("dataSource");
Connection con1 = dataSource.getConnection();
Connection con2 = dataSource.getConnection();
System.out.println("激活的连接数量:"+dataSource.getNumActive());
System.out.println("空闲连接数量:"+dataSource.getNumIdle());
}
}
dbcp数据源连接池的更多相关文章
- DBCP数据源连接池实现原理分析
前些天在调试公司系统的时候发现这样的一个问题:mysql数据库服务停止一段时间后再次重启后吗,tomcat服务无法请求数据库服务,调试了半天对这个问题进行定位解决,期间也搞了很多有关mysql数据库的 ...
- JavaWeb之数据源连接池(1)---DBCP
何为数据源呢?也就是数据的来源.我在前面的一篇文章<JavaWeb之原生数据库连接>中,采用了mysql数据库,数据来源于mysql,那么mysql就是一种数据源.在实际工作中,除了mys ...
- JDBC数据源连接池(3)---Tomcat集成DBCP
此文续<JDBC数据源连接池(2)---C3P0>. Apache Tomcat作为一款JavaWeb服务器,内置了DBCP数据源连接池.在使用中,只要进行相应配置即可. 首先,确保Web ...
- JDBC数据源连接池(1)---DBCP
何为数据源呢?也就是数据的来源.我在前面的一篇文章<JDBC原生数据库连接>中,采用了mysql数据库,数据来源于mysql,那么mysql就是一种数据源.在实际工作中,除了mysql,往 ...
- JavaWeb之数据源连接池(3)---Tomcat
此文续 <JavaWeb之数据源连接池(2)---C3P0>. Apache Tomcat作为一款JavaWeb服务器,内置了DBCP数据源连接池.在使用中,只要进行相应配置即可. 首先, ...
- JavaWeb之数据源连接池(4)---自定义数据源连接池
[续上文<JavaWeb之数据源连接池(3)---Tomcat>] 我们已经 了解了DBCP,C3P0,以及Tomcat内置的数据源连接池,那么,这些数据源连接池是如何实现的呢?为了究其原 ...
- JavaWeb之数据源连接池(2)---C3P0
我们接着<JavaWeb之数据源连接池(1)---DBCP>继续介绍数据源连接池. 首先,在Web项目的WebContent--->WEB-INF--->lib文件夹中添加C3 ...
- JDBC数据源连接池(4)---自定义数据源连接池
[续上文<JDBC数据源连接池(3)---Tomcat集成DBCP>] 我们已经 了解了DBCP,C3P0,以及Tomcat内置的数据源连接池,那么,这些数据源连接池是如何实现的呢?为了究 ...
- JDBC数据源连接池(2)---C3P0
我们接着<JDBC数据源连接池(1)---DBCP>继续介绍数据源连接池. 首先,在Web项目的WebContent--->WEB-INF--->lib文件夹中添加C3P0的j ...
随机推荐
- AJ学IOS 之UIDynamic重力、弹性碰撞吸附等现象
AJ分享,必须精品 一:效果 重力和碰撞 吸附现象 二:简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真 ...
- [模板]SPFA判负环
目录 一.BFS法判负环 二.DFS法判负环 三.SPFA判正环 一.BFS法判负环 Code: #include<bits/stdc++.h> #define re register # ...
- GitHub 热点速览 Vol.16:化身蒙娜丽莎和乔布斯对话
摘要:妙趣横生,上周的 GitHub 热点的关键词.无论是让你化身为爱因斯坦开启会议脑暴模式 avatarify,还是和上周人人都是抠图师项目的同门项目 3D 照片修复:3d-photo-inpain ...
- App的数据如何用python抓取
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. App中的数据可以用网络爬虫抓取么 答案是完全肯定的:凡是可以看到的APP数 ...
- A - Engines Atcoder 4900
题目大意:n个点,任意几个点组合后得到的点距离原点的最远距离. 题解:极角排序:https://blog.csdn.net/qq_39942341/article/details/79840394 利 ...
- vue2.x学习笔记(二十一)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12632730.html. 可复用性&结合-混入 基础 混入(mixin)提供了一种非常灵活的方式,来分发v ...
- 一行配置美化 nginx 目录 autoindex.html
demo
- Mysql基础练习--实例
修改字段名:alter table 表名 change 旧字段名 新字段名 新数据类型;--- 主键 ------------------------------------------------- ...
- pytorch 去除维度为1的维度
out.squeeze(dim=1) out.squeeze_(dim=1)
- 我个人常用的git命令
在还没有习惯用命令行之前,我建议用一下sourcetree这个软件熟悉一下流程. 使用 git clone 拷贝一个 Git 仓库到本地:git clone url 添加所有的文件到缓存区: git ...