数据库连接池的好处是不言而喻的,现在大部分的application server都提供自己的数据库连接池方案,此时,只要按照application server的文档说明,正确配置,即可在应用中享受到数据库连接池的好处。 

 

1。首先,下载必须的jar包 
dbcp包,目前版本是1.2.1:http://jakarta.apache.org/commons/dbcp/ ],在附件已有 

pool包,目前版本是1.3:http://jakarta.apache.org/commons/pool/在附件已有 


 
在建立我们自己的数据库连接池时,可以使用xml文件来传入需要的参数,这里只使用hard code的方式来简单介绍,所有需要我们自己写的代码很少,只要建立一个文件如下: 

Java代码  

1. import org.apache.commons.dbcp.BasicDataSource;  
2. import org.apache.commons.dbcp.BasicDataSourceFactory;  
3.   
4. import java.sql.SQLException;  
5. import java.sql.Connection;  
6. import java.util.Properties;  
7.   
8. public class ConnectionSource {  
9. private static BasicDataSource dataSource = null;  
10.   
11. public ConnectionSource() {  
12.     }  
13.   
14. public static void init() {  
15.   
16. if (dataSource != null) {  
17. try {  
18.                 dataSource.close();  
19. catch (Exception e) {  
20. //  
21.             }  
22. null;  
23.         }  
24.   
25. try {  
26. new Properties();  
27. "driverClassName", "oracle.jdbc.driver.OracleDriver");  
28. "url", "jdbc:oracle:thin:@192.168.0.1:1521:testDB");  
29. "password", "scott");  
30. "username", "tiger");  
31. "maxActive", "30");  
32. "maxIdle", "10");  
33. "maxWait", "1000");  
34. "removeAbandoned", "false");  
35. "removeAbandonedTimeout", "120");  
36. "testOnBorrow", "true");  
37. "logAbandoned", "true");  
38.   
39.             dataSource = (BasicDataSource) BasicDataSourceFactory.createDataSource(p);  
40.   
41. catch (Exception e) {  
42. //  
43.         }  
44.     }  
45.   
46.   
47. public static synchronized Connection getConnection() throws  SQLException {  
48. if (dataSource == null) {  
49.             init();  
50.         }  
51. null;  
52. if (dataSource != null) {  
53.             conn = dataSource.getConnection();  
54.         }  
55. return conn;  
56.     }  
57. }