DBCP——开源组件 的使用
2014-12-16 20:45
447 查看
DBCP——开源组件,将原Conection包裹了起来
1. 需要用到三个Jar包:
commons-collections-3.2.1.jar
commons-dbcp-1.2.2.jar
commons-pool-1.5.2.jar
2. 编写dbcpconfig.properties文件,赋予基本参数
1 #连接设置
2 driverClassName=org.gjt.mm.mysql.Driver
3 url=jdbc:mysql://127.0.0.1/test
4 username=root
5 password=1234
6
7 #<!-- 初始化连接 -->
8 dataSource.initialSize=20
9
10 #<!-- 最大空闲连接 -->
11 dataSource.maxIdle=20
12
13 #<!-- 最小空闲连接 -->
14 dataSource.minIdle=5
15
16 #最大连接数量
17 dataSource.maxActive=100
18
19 #是否在自动回收超时连接的时候打印连接的超时错误
20 dataSource.logAbandoned=true
21
22 #是否自动回收超时连接
23 dataSource.removeAbandoned=true
24
25 #超时时间(以秒数为单位)
26 #设置超时时间有一个要注意的地方,超时时间=现在的时间-程序中创建Connection的时间,如果 maxActive比较大,比如超过100,那么removeAbandonedTimeout可以设置长一点比如180,也就是三分钟无响应的连接进行回收,当然应用的不同设置长度也不同。
27 dataSource.removeAbandonedTimeout=180
28
29 #<!-- 超时等待时间以毫秒为单位 -->
30 #maxWait代表当Connection用尽了,多久之后进行回收丢失连接
31 dataSource.maxWait=1000
3. 文件目录:
注意,要将属性文件编译到bin目录下
4. 建立连接池
① 创建Properties对象
②读取项目中的Properties文件封装成字节流文件
③让Properties对象读取该字节流
④通过工厂模式创建DataSource
使用方法:
1 package com.linying.util;
2
3 import java.io.InputStream;
4 import java.sql.Connection;
5 import java.sql.SQLException;
6 import java.util.Properties;
7
8 import javax.sql.DataSource;
9
10 import org.apache.commons.dbcp.BasicDataSourceFactory;
11 public final class JDBCUtil{
12 private static DataSource myDataSource=null;
13 private JDBCUtil(){
14
15 }
16 static {
17 try{
18 Properties pro=new Properties();
19 InputStream is=JDBCUtil.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");
20 pro.load(is);
21 myDataSource=BasicDataSourceFactory.createDataSource(pro);
22 }
23 catch(Exception e){
24
25 }
26 }
27 public static Connection getConnection()throws SQLException{
28 return myDataSource.getConnection();
29 }
30 }
1. 需要用到三个Jar包:
commons-collections-3.2.1.jar
commons-dbcp-1.2.2.jar
commons-pool-1.5.2.jar
2. 编写dbcpconfig.properties文件,赋予基本参数
1 #连接设置
2 driverClassName=org.gjt.mm.mysql.Driver
3 url=jdbc:mysql://127.0.0.1/test
4 username=root
5 password=1234
6
7 #<!-- 初始化连接 -->
8 dataSource.initialSize=20
9
10 #<!-- 最大空闲连接 -->
11 dataSource.maxIdle=20
12
13 #<!-- 最小空闲连接 -->
14 dataSource.minIdle=5
15
16 #最大连接数量
17 dataSource.maxActive=100
18
19 #是否在自动回收超时连接的时候打印连接的超时错误
20 dataSource.logAbandoned=true
21
22 #是否自动回收超时连接
23 dataSource.removeAbandoned=true
24
25 #超时时间(以秒数为单位)
26 #设置超时时间有一个要注意的地方,超时时间=现在的时间-程序中创建Connection的时间,如果 maxActive比较大,比如超过100,那么removeAbandonedTimeout可以设置长一点比如180,也就是三分钟无响应的连接进行回收,当然应用的不同设置长度也不同。
27 dataSource.removeAbandonedTimeout=180
28
29 #<!-- 超时等待时间以毫秒为单位 -->
30 #maxWait代表当Connection用尽了,多久之后进行回收丢失连接
31 dataSource.maxWait=1000
3. 文件目录:
注意,要将属性文件编译到bin目录下
4. 建立连接池
① 创建Properties对象
②读取项目中的Properties文件封装成字节流文件
③让Properties对象读取该字节流
④通过工厂模式创建DataSource
使用方法:
1 package com.linying.util;
2
3 import java.io.InputStream;
4 import java.sql.Connection;
5 import java.sql.SQLException;
6 import java.util.Properties;
7
8 import javax.sql.DataSource;
9
10 import org.apache.commons.dbcp.BasicDataSourceFactory;
11 public final class JDBCUtil{
12 private static DataSource myDataSource=null;
13 private JDBCUtil(){
14
15 }
16 static {
17 try{
18 Properties pro=new Properties();
19 InputStream is=JDBCUtil.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");
20 pro.load(is);
21 myDataSource=BasicDataSourceFactory.createDataSource(pro);
22 }
23 catch(Exception e){
24
25 }
26 }
27 public static Connection getConnection()throws SQLException{
28 return myDataSource.getConnection();
29 }
30 }
相关文章推荐
- IIS7下使用MSDNURLRewriting.msi开源组件的设置
- c3p0, dbcp 开源的连接池开源连接使用
- 使用开源组件slidingmenu_library来模拟实现人人客户端的主页侧滑界面
- 开源Word读写组件DocX,通过word模板,导出用户简历使用示例
- 使用开源组件slidingmenu_library
- [翻译]开源发送邮件组件dotnetopenmail使用介绍
- 如何使用开源的Android组件
- JDBC的轻量级封装DBUtils开源组件的使用(一)
- 开源组件:Gson库的一般使用方法
- 黑马程序员 JDBC_如何使用开源项目DBCP(实际项目中常用)(李勇老师)
- 使用 java 开源资源实现通用可靠的下载组件
- 开源组件DockPanel Suite使用
- JDBC学习之路(十一)使用开源项目DBCP
- JDBC的轻量级封装DBUtils开源组件的使用(二)
- 开源电子商务之OFBIZ10.04组件开发入门 :使用外部数据库MySql
- 开源组件actionbarsherlock的使用
- 使用Flex读取操作Excel文档的组件(开源组件)
- 开源组件actionbarsherlock的使用
- 使用openlayers开源组件建立地图应用
- 使用开源组件slidingmenu_library来模拟实现人人客户端的主页侧滑界面