环境:Eclipsse+Oracle 9i以上版本
这段代码在本地环境试验过执行通过,具体在应用的时候稍加改动即可(使用到的变量根据实际情况做相应调整)。
package com.paic.nets.comm;
import java.sql.Connection;
import java.sql.DriverManager;
public class GetConnection
{
private static Connection conn = null;
private static String databaseUrl = "";
private static String password = "";
private static String username = "";
private static boolean isSame = false;
private static final String driver = "oracle.jdbc.driver.OracleDriver";
public static void setConnParams(String url, String user, String pwd)
{
if ((url.equals(databaseUrl)) && (username.equals(user)) && (password.equals(pwd))) {
isSame = true;
return;
}
isSame = false;
databaseUrl = url;
username = user;
password = pwd;
}
private static Connection getConn()
throws ConnParamsException, Exception
{
if ((databaseUrl == null) || (username == null) || (password == null)) {
throw new ConnParamsException("获取连接的参数不能为空!");
}
if ((databaseUrl.equals("")) || (username.equals("")) || (password.equals(""))) {
throw new ConnParamsException("获取连接的参数不能为空!");
}
if ((conn != null) && (isSame)) {
return conn;
}
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
conn = DriverManager.getConnection(databaseUrl, username, password);
return conn;
}
public static Connection getConn(boolean isNew)
throws Exception
{
if (isNew) {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
return DriverManager.getConnection(databaseUrl, username, password);
}
return getConn();
}
public static void closeConn()
{
try
{
if (conn != null)
conn.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}