Sono occorsi circa 2 giorni per capire come avviare un server in memoria e quindi accedere dall'esterno. Spero che questo salvi il tempo di qualcuno.
Server server = new Server();
server.setDatabaseName(0, "mainDb");
server.setDatabasePath(0, "mem:mainDb");
server.setDatabaseName(1, "standbyDb");
server.setDatabasePath(1, "mem:standbyDb");
server.setPort(9001); // this is the default port
server.start();
Quando si deve accedere al database in-memory per qualsiasi CRUD, ecco cosa devi fare: -
String url="jdbc:hsqldb:hsql://192.168.5.1:9001/mainDb";
Class.forName("org.hsqldb.jdbc.JDBCDriver");
Connection conn = DriverManager.getConnection(url, "SA", "");
dove 192.168.5.1 è l'IP del server in cui è in esecuzione HSQL. Per connettersi a standbyDb, sostituire mainDb con standbyDb nella prima riga. Una volta ottenuta la connessione, è possibile eseguire tutte le operazioni relative al database.
Per connettersi al server da remoto utilizzando DatabaseManagerSwing, ecco cosa è necessario fare.
Scarica hsqldb-xxx vaso e copiarlo in una cartella (xxx è la versione) aprire un terminale, o un comando e cd per la cartella ed eseguire
java -cp hsqldb-x.x.x.jar org.hsqldb.util.DatabaseManagerSwing
Selezionare "HSQL Server Database Engine" da il menu a discesa Type e restituisce "jdbc: hsqldb: hsql: //192.168.5.1: 9001/mainDb" come URL. Questo ti collegherà all'istanza del server in memoria HSQL remoto.
Happy Coding !!
fonte
2016-01-11 12:41:40
Ho omesso la versione in. \ Hsqldb-1.8.0.10.jar, ma poi funziona. Grazie. –