apache manualsから読んだように、次のコードを使用して、組み込みの Java DB (AKA Derby) データベースを復元しようとしました。
private void restoreBackup() {
FileDialog fileDialog = new FileDialog(new Frame(), "Choose A Backup Folder)", FileDialog.LOAD);
//fileDialog.setDirectory("::myVolume:");
fileDialog.setVisible(true);
String fileName = fileDialog.getDirectory();
if (fileDialog.getDirectory() != null) {
fileName = fileName.substring(0, fileName.lastIndexOf(System.getProperty("file.separator")));
try {
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
Properties connectionProps = new Properties();
connectionProps.put("restoreFrom", fileName);
connectionProps.put("user", "pass");
connectionProps.put("password", "databaseName");
conn = DriverManager.getConnection(dbURL, connectionProps);
conn.commit();
System.out.println("Database Restored");
} catch (InstantiationException ex) {
Logger.getLogger(ReseachAssistantUI.class.getName()).log(Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
Logger.getLogger(ReseachAssistantUI.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(ReseachAssistantUI.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex) {
Logger.getLogger(ReseachAssistantUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
ただし、例外がスローされなくても、何も起こりません。ここで何か間違ったことをしていますか?