DBCP数据库连接池实例(2种方法实现)
来源:互联网 发布:js中的eval 编辑:程序博客网 时间:2024/05/22 18:33
第一种实现方式:不利用配置文件 关键代码如下:
package tan.com;import java.io.InputStream;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;import org.junit.Test;public class TestJDBC {/** * 如何使用DBCP数据库连接呢? * 1、加入2个jar包commons pool * 2、创建数据库连接池实例 * 3、创建常用的属性 * 4、从数据源中获取数据库连接 * @throws Exception */@Testpublic void testDPCP() throws SQLException{BasicDataSource dataSource=null;//1.创建DBCP数据库源实例dataSource=new BasicDataSource();//2.为数据源实例指定必须的属性dataSource.setUsername("root");dataSource.setPassword("1234");dataSource.setUrl("jdbc:mysql://localhost:3306/tan");dataSource.setDriverClassName("com.mysql.jdbc.Driver");//3。指定数据源的一些可选的属性//1)指定数据库连接池中初始化连接数的个数dataSource.setInitialSize(5);//2)指定最大的连接数:同一时刻同时向数据库申请的连接数//最大空闲数,放洪峰过后,连接池中的连接过多,dataSource.setMaxActive(5);//3)指定最小连接数:数据库空闲状态下所需要保留的最小连接数//防止当洪峰到来时,再次申请连接引起的性能开销;dataSource.setMinIdle(2);//4)最长等待时间:等待数据库连接的最长时间,单位为毫秒,超出将抛出异常dataSource.setMaxWait(1000*5);//4.从数据源中获取数据库连接Connection connection=dataSource.getConnection();System.out.println(connection.getClass());}}第二种方式使用配置文件:
/** * 1. 加载 dbcp 的 properties 配置文件: 配置文件中的键需要来自 BasicDataSource的属性. * 2. 调用 BasicDataSourceFactory 的 createDataSource 方法创建 DataSource * 实例 * 3. 从 DataSource 实例中获取数据库连接. * @throws Exception */@Testpublic void testDBCPWithDataSourceFactory() throws Exception{Properties properties = new Properties();InputStream inStream = TestJDBC.class.getClassLoader().getResourceAsStream("dbcp.properties");properties.load(inStream);DataSource dataSource = BasicDataSourceFactory.createDataSource(properties);System.out.println( dataSource.getConnection()); }配置文件属性:dbcp.properties
username=root
password=1234
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///tan
initialSize=10
maxActive=50
minIdle=5
maxWait=5000
运行结果:
jdbc:mysql:///tan, UserName=root@localhost, MySQL Connector Java
2014年5月14日 星期三笔记
0 0
- DBCP数据库连接池实例(2种方法实现)
- DBCP数据库连接池实例2
- dbcp数据库连接池实例
- 开源数据库连接池(dbcp实例)
- DBCP数据库连接池实例1
- 数据库连接池(DBCP)
- 数据库连接池(DBCP C3P0)
- 数据库连接池--概述以及DBCP实现
- log4j利用数据库连接池(dbcp)
- JDBC 数据库连接池(DBCP、C3P0) 详解
- dbcp数据库连接池
- JDBC-数据库连接池dbcp
- 数据库连接池DBCP浅析
- 数据库连接池dbcp整理
- DBCP 数据库连接池
- DBCP 数据库连接池配置
- java数据库连接池dbcp
- DBCP 数据库连接池配置
- uva 920 - Sunny Mountains(平移扫描线)
- Machine Learning(Andrew)Week9(下)
- 综合使用套接字选项的例子,如设置套接字选项大小,设置套接字地址重用
- 关于类和继承
- 0015数据库查询 方式 查询语句实例
- DBCP数据库连接池实例(2种方法实现)
- 图像处理之加减乘除
- 免费云盘,为什么不用?
- QT控件之对话框
- 老总问老总|洋和尚怎么念好中国经赫
- 几个海量数据处理面试题的解题思路
- jquery插件学习1
- 雾山的Android学习笔记---线程(Thread)
- JSP中的TAG文件和TLD文件小结