Hey Leute, ich bins nochmal.
Ich versuche gerade ein Programm zu schreiben um eine Datenbank zu verwalten. Jedoch kann ich leider nicht auf meine Datenbank zugreifen. Folgender Fehler erscheint:
java.sql.SQLTransientConnectionException: java.net.ConnectException: Connection refused: connect
Ich führe 2 Programme aus:
Zuerst:
Dann:
Weiß leider nicht wo mein Fehler liegt, wobei ich auch gestehen muss, dass ich das HSQLDB-System noch nicht so ganz verstanden habe. Falls jemand gute Tutorials zum Thema HSQLDB kennt würde ich mich freuen wenn er diese Verlinken könnte. Ob nun Englisch oder Deutsch ist egal.
Ich versuche gerade ein Programm zu schreiben um eine Datenbank zu verwalten. Jedoch kann ich leider nicht auf meine Datenbank zugreifen. Folgender Fehler erscheint:
java.sql.SQLTransientConnectionException: java.net.ConnectException: Connection refused: connect
Ich führe 2 Programme aus:
Zuerst:
Java:
public class Model {
private String currentDBPath = "";
private Server hsqlServer;
public Model() {
hsqlServer = new Server();
hsqlServer.setLogWriter(null);
hsqlServer.setSilent(true);
try {
Class.forName("org.hsqldb.jdbc.JDBCDriver");
} catch (Exception e) {
System.err.println("ERROR: failed to load HSQLDB JDBC driver.");
}
createDB("Kunden");
}
public void createDB(String dbPath) {
currentDBPath = dbPath;
try {
hsqlServer = new Server();
hsqlServer.setLogWriter(null);
hsqlServer.setSilent(true);
hsqlServer.setDatabaseName(0, dbPath);
hsqlServer.setDatabasePath(0, "file:" + dbPath);
hsqlServer.start();
} finally {
exit();
}
}
public void exit() {
try {
if (hsqlServer != null) {
hsqlServer.stop();
}
if (connection != null) {
connection.close();
}
if (rs != null) {
rs.close();
}
} catch (Exception e) {
System.out.println("Error " + e);
}
}
}
Dann:
Java:
public class Model {
private String currentDBPath = "";
private Connection connection;
private ResultSet rs;
private Server hsqlServer;
public Model() {
hsqlServer = new Server();
hsqlServer.setLogWriter(null);
hsqlServer.setSilent(true);
try {
Class.forName("org.hsqldb.jdbc.JDBCDriver");
} catch (Exception e) {
System.err.println("ERROR: failed to load HSQLDB JDBC driver.");
}
connectToDB("Kunden");
}
public void connectToDB(String dbPath) {
currentDBPath = dbPath;
try {
connection = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/" + dbPath + ";ifexists=true", "sa", "");
} catch (SQLException ex) {
Logger.getLogger(Model.class.getName()).log(Level.SEVERE, null, ex);
} finally {
exit();
}
}
public void exit() {
try {
if (hsqlServer != null) {
hsqlServer.stop();
}
if (connection != null) {
connection.close();
}
if (rs != null) {
rs.close();
}
} catch (Exception e) {
System.out.println("Error " + e);
}
}
}
Weiß leider nicht wo mein Fehler liegt, wobei ich auch gestehen muss, dass ich das HSQLDB-System noch nicht so ganz verstanden habe. Falls jemand gute Tutorials zum Thema HSQLDB kennt würde ich mich freuen wenn er diese Verlinken könnte. Ob nun Englisch oder Deutsch ist egal.