我有Connection類的代碼,它只從一個數據庫獲得連接。看看下面的DBConnection.java從java應用程序創建到2個數據庫的連接
package eksim.db.sql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
public Connection conn=null;
private static DBConnection dbConn=null;
static final String DB_URL=
"jdbc:sqlserver://10.0.0.47\\test;databaseName=a;";
static final String DB_USER="sa";
static final String DB_PASS="123";
public DBConnection(){
if(conn==null){
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
conn=DriverManager.getConnection(DB_URL, DB_USER, DB_PASS);
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
public static DBConnection getInstance(){
DBConnection conn=null;
if(dbConn==null){
System.out.println("New");
dbConn=new DBConnection();
conn=dbConn;
} else{
conn=dbConn;
}
return conn;
}
public Connection getCon() throws SQLException{
return this.conn;
}
}
現在,我想創建另一個連接到不同的數據庫。任何人都可以給我建議修改此代碼,以獲得連接到2數據庫的結果?謝謝任何回覆
認爲這是最好的,如果你有'ConcurrentHashMap'而不是'HashMap',它更好,同時使用幾乎所有的線程:) –
@AnanthaSharma它當然是一個有效的點,但兩個實例方法是'synchronized' – MadProgrammer