74 lines
1.7 KiB
Java
74 lines
1.7 KiB
Java
package de.dis2017.data;
|
|
|
|
import java.io.File;
|
|
import java.io.FileInputStream;
|
|
import java.io.IOException;
|
|
import java.net.URISyntaxException;
|
|
import java.net.URL;
|
|
import java.sql.Connection;
|
|
import java.sql.DriverManager;
|
|
import java.sql.SQLException;
|
|
import java.util.Properties;
|
|
|
|
/**
|
|
* Einfaches Singleton zur Verwaltung von Datenbank-Verbindungen.
|
|
*
|
|
* @author Michael von Riegen
|
|
* @version April 2009
|
|
*/
|
|
class DB2ConnectionManager {
|
|
|
|
// instance of Driver Manager
|
|
private static DB2ConnectionManager _instance = null;
|
|
|
|
// DB2 connection
|
|
private Connection _con;
|
|
|
|
/**
|
|
* Erzeugt eine Datenbank-Verbindung
|
|
*/
|
|
private DB2ConnectionManager() {
|
|
try {
|
|
// Holen der Einstellungen aus der db2.properties Datei
|
|
Properties properties = new Properties();
|
|
URL url = ClassLoader.getSystemResource("db2.properties");
|
|
FileInputStream stream = new FileInputStream(new File(url.toURI()));
|
|
properties.load(stream);
|
|
stream.close();
|
|
|
|
String jdbcUser = properties.getProperty("jdbc_user");
|
|
String jdbcPass = properties.getProperty("jdbc_pass");
|
|
String jdbcUrl = properties.getProperty("jdbc_url");
|
|
|
|
// Verbindung zur DB2 herstellen
|
|
Class.forName("com.ibm.db2.jcc.DB2Driver");
|
|
_con = DriverManager.getConnection(jdbcUrl, jdbcUser, jdbcPass);
|
|
|
|
} catch (IOException | ClassNotFoundException | SQLException | URISyntaxException e){
|
|
e.printStackTrace();
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* Liefert Instanz des Managers
|
|
*
|
|
* @return DB2ConnectionManager
|
|
*/
|
|
static DB2ConnectionManager getInstance() {
|
|
if (_instance == null) {
|
|
_instance = new DB2ConnectionManager();
|
|
}
|
|
return _instance;
|
|
}
|
|
|
|
/**
|
|
* Liefert eine Verbindung zur DB2 zurC<ck
|
|
*
|
|
* @return Connection
|
|
*/
|
|
Connection getConnection() {
|
|
return _con;
|
|
}
|
|
|
|
} |