jdbc数据库连接实例(oracle)

package com.bobo.util;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


/**
 * JDBC辅助类 用于构建数据库连接(采用单例模式)
 */
public final class JDBCUtilSingle {

	static String driver_class = "oracle.jdbc.driver.OracleDriver";
	static String url = "jdbc:oracle:thin:@192.168.1.111:1521:orcl";
	static String name = "test";
	static String password = "123456";
	static Connection conn = null;
	private static JDBCUtilSingle jdbcUtilSingle = null;

	public static JDBCUtilSingle getInitJDBCUtil() {
		if (jdbcUtilSingle == null) {
			// 给类加锁 防止线程并发
			synchronized (JDBCUtilSingle.class) {
				if (jdbcUtilSingle == null) {
					jdbcUtilSingle = new JDBCUtilSingle();
				}
			}
		}
		return jdbcUtilSingle;
	}

	private JDBCUtilSingle() {
	}

	// 通过静态代码块注册数据库驱动,保证注册只执行一次
	static {
		try {
			Class.forName(driver_class);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}

	// 获得连接
	public Connection getConnection() {
		try {
			conn = DriverManager.getConnection(url,name,password);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;

	}

	// 关闭连接
	public void closeConnection(ResultSet rs, Statement st,PreparedStatement ptst, Connection con) {
		try {
			if (rs != null) {
				rs.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			try {
				if (st != null) {
					st.close();
				}
				if(ptst !=null){
					ptst.close();
				}
			} catch (Exception e) {
				e.printStackTrace();
			} finally {
				try {
					if (con != null) {
						con.close();
					}
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
		}
	}

}


你可能感兴趣的:(jdbc数据库连接实例(oracle))