數據庫連接類2
package com.yanek.test;
import java.sql.*;
import javax.naming.*;
import javax.sql.*;
/**
* 數據庫工具類
* 1,查找DataSource獲取數據庫連接
* 2,釋放連接資源
*/
public class DBHandle {
/**
* 獲取數據庫連接
* 1,初始化上下文環境Context
* 2,在Context中查找DataSource,名字預先給定,這裏為:“java:comp/env/jdbc/bbs”
* 3,如果DataSource不為空,就從DataSource中取出一個連接
*/
public synchronized static Connection getConn() throws Exception {
Connection conn = null;
return conn;
}
/**
* 釋放連接相關資源,請注意相關次序
* 1,先釋放結果集
* 2,再釋放語句句柄
* 3,最後釋放連接
*/
public static void closeResource(Statement st, ResultSet rs, Connection cnn) {
try {
if (rs != null) {
rs.close();
}
}
catch (Exception es) {
es.printStackTrace();
}
try {
if (st != null) {
st.close();
}
}
catch (Exception es) {
es.printStackTrace();
}
try {
if (cnn != null) {
cnn.close();
cnn = null;
}
}
catch (Exception es) {
es.printStackTrace();
}
}
/**
* 使用DriverManager獲取數據庫連接
*/
public static Connection getConnection() throws Exception {
String driver = "com.mysql.jdbc.Driver";
String urlString = "jdbc:mysql://localhost/test";
String user = "root";
String pwd = "root";
Class.forName(driver);
Connection cnn = DriverManager.getConnection(urlString, user, pwd);
return cnn;
}
public static void main(String[] args) {
try {
System.out.println("conn:" + DBHandle.getConnection());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.yanek.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 數據庫工具類 1,查找DataSource獲取數據庫連接 2,釋放連接資源
*/
public class DBSource {
public static Connection getConnection(final String poolName)
throws SQLException {
try {
return DriverManager.getConnection(poolName);
} catch (Exception e) {
return null;
}
}
/**
* 釋放連接相關資源,請注意相關次序 1,先釋放結果集 2,再釋放語句句柄 3,最後釋放連接
*/
public static void closeResource(Statement st, ResultSet rs, Connection cnn) {
try {
if (rs != null) {
rs.close();
}
} catch (Exception es) {
es.printStackTrace();
}
try {
if (st != null) {
st.close();
}
} catch (Exception es) {
es.printStackTrace();
}
try {
if (cnn != null) {
cnn.close();
cnn = null;
}
} catch (Exception es) {
es.printStackTrace();
}
}
/**
* 使用DriverManager獲取數據庫連接
*/
public static Connection getConnection() throws Exception {
String driver = "com.mysql.jdbc.Driver";
String urlString = "jdbc:mysql://localhost/test";
String user = "root";
String pwd = "root";
Class.forName(driver);
Connection cnn = DriverManager.getConnection(urlString, user, pwd);
return cnn;
}
public static void main(String[] args) {
try {
System.out.println("conn:" + DBSource.getConnection());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
最後更新:2017-04-02 03:13:28
上一篇:
數據庫連接DBSource.java類
下一篇:
LRU算法簡單例子
poj 2960,hdu 1536 S-NIM 博弈
android Fragments詳解三:實現Fragment的界麵
C++多任務編程簡明教程 (1) - C++的多任務其實很簡單
Android TextView 實現文字大小不同和文字顏色不同
開發共享圖書APP軟件可行嗎
什麼是張量、數據立體、矩陣、向量和純數
Deepgreen & Greenplum 高可用(二) - Master故障轉移
自定義Unity對象生命周期管理集成ADO.NET Entity Framework
蠕蟲勒索軟件WannaCrypt0r的行為分析
雲時代,阿裏雲帶給你無限可能,助你騰飛!相信你也可以