1. 程式人生 > >JDBC連接Oracle工具類

JDBC連接Oracle工具類

local turn 使用 main 關閉 信息 oracle word ati



import java.sql.*;
import java.util.ResourceBundle;

/**
* jdbc工具類,負責:
* 1. 加載/註冊數據庫驅動程序
* 2. 獲取數據庫連接
* 3. 釋放數據庫資源(Connection, Statement, ResultSet)
*/
public class JdbcUtil {

private static final String DRIVER = getValue("jdbc.driver");
private static final String URL = getValue("jdbc.url");
private static final String USERNAME = getValue("jdbc.username");
private static final String PASSWORD = getValue("jdbc.password");

static{
try {
//1. 註冊數據庫驅動程序
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
System.err.println("註冊數據庫驅動程序失敗。" + e.getMessage());
}
}
/**
* 2. 獲取數據庫連接
*
* @return
*/
public static Connection getConnection() {
try {
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
return conn;
} catch (SQLException e) {
System.err.println("a獲得數據連接失敗。" + e.getMessage());
}
return null;
}

/**
* @param conn
* @param stmt
* @param rs
*/
public static void close(Connection conn, Statement stmt, ResultSet rs) {
try {
//關閉數據庫的資源的順序最好與使用的順序相反
if(rs != null){
rs.close();
}
if(stmt != null){
stmt.close();
}
if(conn != null){
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
* 讀取屬性文件中的信息
*
* @param key
* @return
*/
private static String getValue(String key) {
// 資源包綁定
ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
return bundle.getString(key);
}

/**
* 對數據庫連接進行測試
* @param args
*/
public static void main(String[] args) {
System.out.println(getValue("jdbc.driver"));
System.out.println(getConnection());
}
}


其中的數據庫連接數據單獨存放在jdbc.peoperties文件中
文件內容如下:
# 數據庫的連接信息
# key=value

# 驅動程序類
jdbc.driver=oracle.jdbc.driver.OracleDriver

# 連接到數據庫的url
jdbc.url=jdbc:oracle:thin:@localhost:1521:ORCL

# 連接數據庫的用戶名
jdbc.username=username

# 連接數據庫的密碼
jdbc.password=password

JDBC連接Oracle工具類