经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
Oracle连接池工具类OJDBCUtils
来源:cnblogs  作者:地球外面是什么  时间:2020/7/18 23:43:09  对本文有异议

 

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 }

 

原文链接:http://www.cnblogs.com/wh0529/p/13337922.html

 友情链接: NPS  问卷模板