超微型Java数据库连接池

在某些情况下,超微型的数据库连接池很实用,比如做GUI编程、程序开发初级阶段,超微型的连接池的好处就是初始化速度快、依赖包少,或者干脆不依赖第三方包,可以大大缩短工程的启动时间,和测试运行的时间。
 
下面推荐三款快要被遗忘掉的数据库连接池:
 
一、Db Connection Broker
 
DDConnectionBroker是一个简单,轻量级的数据库连接池,目前最新版本是2.0,好像官方的站点访问不了。
 
或者看看这个吧: http://www.javaexchange.com/
 
public  class Test { 
         public  static  void main(String[] args)  throws Exception { 
                DbConnectionBroker myBroker =  new DbConnectionBroker( "com.mysql.jdbc.Driver"
                                 "jdbc:mysql://192.168.104.163:3306/testdb_a", 
                                "vcom""vcom", 2, 6, 
                                "c:\\test.log", 0.01); 
                Connection conn =myBroker.getConnection(); 
                Statement stmt = conn.createStatement(); 
                ResultSet rs = stmt.executeQuery("select * from tab_a"); 
                while(rs.next()){ 
                        System.out.println(rs.getString(1)+" "+rs.getString(2)); 
                } 
        } 
}
 
1 aaa 
2 aaa 
 
测试发现:
连接池工作良好,连接使用完毕后调用myBroker.freeConnection(conn);以便让池知道连接已经空闲了。或者调用conn.close()方法也可。
2、6分别是最小和最大连接数。
 
调试下面的例子,看程序执行过程就明白了。
public  class Test { 
         public  static  void main(String[] args)  throws Exception { 
                DbConnectionBroker myBroker =  new DbConnectionBroker( "com.mysql.jdbc.Driver"
                                 "jdbc:mysql://192.168.104.163:3306/testdb_a", 
                                "vcom""vcom", 2, 4, 
                                "c:\\test.log", 0.01); 
                Connection conn =myBroker.getConnection(); 
                Connection conn1 =myBroker.getConnection(); 
                Connection conn2 =myBroker.getConnection(); 
                Connection conn3 =myBroker.getConnection(); 
                Connection conn4 =myBroker.getConnection(); 
                Connection conn5 =myBroker.getConnection(); 
                Statement stmt = conn.createStatement(); 
                ResultSet rs = stmt.executeQuery("select * from tab_a"); 
                while(rs.next()){ 
                        System.out.println(rs.getString(1)+" "+rs.getString(2)); 
                } 
                conn2.close(); 
                myBroker.freeConnection(conn); 

                conn =myBroker.getConnection(); 
                stmt = conn.createStatement(); 
                rs = stmt.executeQuery("select * from tab_a"); 
                while(rs.next()){ 
                        System.out.println(rs.getString(1)+" "+rs.getString(2)); 
                } 
                myBroker.freeConnection(conn); 
        } 
}
 
二、MiniConnectionPoolManager
 
MiniConnectionPoolManager是一个轻量级JDBC数据库连接池。它只需要Java1.5(或更高)并且没有依赖第三方包。
 
另外,该站点还有其他几款开源组件,都很不错。
 
三、DBPool
 
DBPool是一个高效的易配置的数据库连接池。它除了支持连接池应有的功能之外,还包括了一个对象池使你能够开发一个满足自已需求的数据库连接池。
 


本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/184219,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值