Oracle连接池工具类OJDBCUtils

Posted wh0529

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle连接池工具类OJDBCUtils相关的知识,希望对你有一定的参考价值。

 

Oraclejdbc.properties

 

driverClassName=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
username=dbtest
password=dbtest

 

 OJDBCUtils.java


 1 package com.yidu.demo.util;
 2 
 3 import oracle.jdbc.pool.OracleDataSource;
 4 import javax.sql.DataSource;
 5 import java.io.IOException;
 6 import java.io.InputStream;
 7 import java.sql.Connection;
 8 import java.sql.ResultSet;
 9 import java.sql.SQLException;
10 import java.sql.Statement;
11 import java.util.Properties;
12 
13 
14 /*
15     1. 声明静态数据源成员变量
16     2. 创建连接池对象
17     3. 定义公有的得到数据源的方法
18     4. 定义得到连接对象的方法
19     5. 定义关闭资源的方法
20 */
21 public class OJDBCUtils {
22     // 1.    声明静态数据源成员变量
23     private static OracleDataSource ds;
24     // 2. 创建连接池对象
25     static {
26         // 加载配置文件中的数据
27         InputStream is = OJDBCUtils.class.getClassLoader().getResourceAsStream("Oraclejdbc.properties");
28         Properties pp = new Properties();
29         try {
30             pp.load(is);
31             // 创建连接池,使用配置文件中的参数
32             ds = new OracleDataSource();
33             ds.setDriverType(pp.getProperty("driverClassName"));
34             ds.setURL(pp.getProperty("url"));
35             ds.setUser(pp.getProperty("username"));
36             ds.setPassword(pp.getProperty("password"));
37         } catch (IOException e) {
38             e.printStackTrace();
39         } catch (Exception e) {
40             e.printStackTrace();
41         }
42     }
43     // 3. 定义公有的得到数据源的方法
44     public static DataSource getDataSource() {
45         return ds;
46     }
47     // 4. 定义得到连接对象的方法
48     public static Connection getConnection() throws SQLException {
49         return ds.getConnection();
50     }
51     // 5.定义关闭资源的方法
52     public static void close(Connection conn, Statement stmt, ResultSet rs) {
53         if (rs != null) {
54             try {
55                 rs.close();
56             } catch (SQLException e) {}
57         }
58         if (stmt != null) {
59             try {
60                 stmt.close();
61             } catch (SQLException e) {}
62         }
63         if (conn != null) {
64             try {
65                 conn.close();
66             } catch (SQLException e) {}
67         }
68     }
69     // 6.重载关闭方法
70     public static void close(Connection conn, Statement stmt) {
71         close(conn, stmt, null);
72     }
73 }

 

以上是关于Oracle连接池工具类OJDBCUtils的主要内容,如果未能解决你的问题,请参考以下文章

Java做数据库连接池的时候加载oracle的JDBC驱动时总是提示找不到驱动类

Druid连接池的工具类以及简单代码实现

C3P0连接池工具类实现步骤及方法

DBUtils和连接池

玩转JDBC打造数据库操作万能工具类JDBCUtil,加入了高效的数据库连接池,利用了参数绑定有效防止SQL注入

玩转JDBC打造数据库操作万能工具类JDBCUtil,加入了高效的数据库连接池,利用了参数绑定有效防止SQL注入