Derby/JavaDB Verbindung mit FTP-Server

cover1012

Aktives Mitglied
Liebe Java-Gemeinde,

wenn ich mich mit einer Derby-Datenbank verbinden möchte, mache ich das bisher so:

Java:
String driver = "org.apache.derby.jdbc.EmbeddedDriver";
String dbSystem = "jdbc:derby:embeddedDB;create=true";

try {
       Class.forName(driver).newInstance();
       co = DriverManager.getConnection(dbSystem, "", "");

} catch (Exception ex) {
	System.out.println(ex);
}

Die Datenbank (embededDB) liegt im selben Verzeichnis wie mein jar-File.
Nun möchte ich mich mit einer Datenbank verbinden, die auf einem FTP-Server liegt, z.B.:
ftp://meineURL/bibliothek/embeddedDB, Server-Password: pass, Server-User: user.

Frage: Funktioniert das, und wenn ja, wie gebe ich die URL an?
 

cover1012

Aktives Mitglied
Glaub nicht, dass das geht, da FTP schon grundlegend nur ein File Transfer Protocol ist und kein Dateisystem.

Wenn das nicht geht, kann ich meine Datenbank-GUI als Applet auf einen Server laden und signieren. Das hab ich auch schon versucht, und es klappt (Applet startet), jedoch wird die Derby-Datenbank nicht geladen. Ich vermute, dass liegt daran, dass ein relativer Pfad auf einem Server nicht funktioniert.

Welche Möglichkeiten habe ich? Kann ich die DB mit ins jar-File packen? Und wenn ja, wie lade ich diese dann?
 
G

Gelöschtes Mitglied 5909

Gast
das liegt dadran dass das applet client-seitig läuft und eben nicht auf dem server
 
N

nillehammer

Gast
Mit Derby geht es garnicht. Du kannst aber andere embedded Datenbanken benutzen HSQLDB bietet einen Modus an, wo Du jdbc durch http tunneln kannst. Dabei läuft der Zugriff über ein spezielles Servlet, das von HSQLDB mit geliefert wird.

//Edit: Was natürich geht ist jdbc übers internet, wenn Dein Webserverbetreiber dafür einen Port freischaltet.
 
Zuletzt bearbeitet von einem Moderator:
G

Gelöschtes Mitglied 5909

Gast
andere frage: musst du zwingend direkt auf eine datenbank zugreifen? keine ahnung was du machen wilst,
aber vielleicht würde ein einfaches servlet / phpskript o.ä. reichen.
 

cover1012

Aktives Mitglied
andere frage: musst du zwingend direkt auf eine datenbank zugreifen? keine ahnung was du machen wilst,
aber vielleicht würde ein einfaches servlet / phpskript o.ä. reichen.

Das Problem ist folgendes: Die Java-Applikation inkl. Derby-DB ist fertig und wird schon länger genutzt. Es handelt sich dabei um eine Datenbank, die den Bestand einer Bibliothek verwaltet. Das Programm ist auf einem Rechner in meiner Arbeitsstelle installiert. Nun würden die Kollegen aber auch gerne von zu Hause darauf zugreifen können. Eine komplette Neuprogrammierung wäre ein extremer Aufwand und daher dachte ich, man könnte das System einfach irgendwie auf einen Server schieben.
 
N

nillehammer

Gast
Das Programm ist auf einem Rechner in meiner Arbeitsstelle installiert. Nun würden die Kollegen aber auch gerne von zu Hause darauf zugreifen können. Eine komplette Neuprogrammierung wäre ein extremer Aufwand und daher dachte ich, man könnte das System einfach irgendwie auf einen Server schieben.
Na das hört sich doch ganz gut an. Dann kann man ja auch bestimmt den Port für direkte jdbc-Zugriffe freischalten. Dann brauchst Du kein http. Wobei zu beachten ist, dass jdbc Klartext ist. Bei Firmendaten vielleicht nicht erwünscht, die so durchs Internet zu senden. Wenn Deine Kollegen sich erst per VPN einwählen ist es natürlich kein Problem.
 

cover1012

Aktives Mitglied
Na das hört sich doch ganz gut an. Dann kann man ja auch bestimmt den Port für direkte jdbc-Zugriffe freischalten. Dann brauchst Du kein http. Wobei zu beachten ist, dass jdbc Klartext ist. Bei Firmendaten vielleicht nicht erwünscht, die so durchs Internet zu senden. Wenn Deine Kollegen sich erst per VPN einwählen ist es natürlich kein Problem.

Vielen Dank für die Hilfe, aber ich glaube, dass ich deinen ersten Vorschlag umsetzten werde (HSQLDB). Bei meiner "Firma" handelt es sich um eine Schule, und ich glaube, dass die Kollegen mit Tunnelung,VPN etc. überfordert sind. Meine eigenen Fähigkeiten und Kenntnisse sind da auch sehr begrenzt. Stellt sich mir nur noch die Frage, wie ich den Datenbestand von Derby nach HSQLDB bekomme?
 

TheDarkRose

Gesperrter Benutzer
Hallo??? Außenmitarbeiter von außen sollten generell nur per verschlüsselten VPN aufs Intranet zugreifen dürfen. Da kannst du dann wo immer auch die Derby DB liegt, ganz normal das Netzlaufwerk einbinden und ganz normal arbeiten. Solche Geschichten gehören an die Netzwerkadministratoren verlagert und nicht so ne unsichere Kacke mit direkten JDBC übers Internet oder HTTP-Tunnel.

Und sollten die dort zuständigen Admins damit überfordert sein, gib ihnen nen Klaps auf den Hinterkopf und sag sie sollen sich damit beschäftigen, denn das ist nicht deine Angelegenheit. Oder du musst dich echt selbst mit VPN auseinandersetzen.
 
N

nillehammer

Gast
TheDarkRose hat gesagt.:
nicht so ne unsichere Kacke mit direkten JDBC übers Internet oder HTTP-Tunnel.
Naja, als Kacke würd ich das nicht bezeichnen. Dass ein Applet Verbindungen zu seinem "Stammserver" aufmacht bspw. über jdbc oder auch http ist nicht so ungewöhnlich.

Bei Deiner Kritik zum Thema Sicherheit hast Du natürlich Recht. Da ist zu prüfen, was für eine Art Daten verarbeitet werden. Spätestens bei personenbeziehbaren Daten geht es nicht ohne geeignete Schutzmaßnahmen.

@cover1012: Red mal mit Deinen Admins über die Einrichtung eines SSL-VPN-Gateways für den Zugang zu Eurem Intranet. Die Einrichtung eines solchen und die Benutzung durch die Anwender ist erstaunlich einfach.
 

cover1012

Aktives Mitglied
HSQLDB bietet einen Modus an, wo Du jdbc durch http tunneln kannst. Dabei läuft der Zugriff über ein spezielles Servlet, das von HSQLDB mit geliefert wird.

So, hab in meiner Applikation jetzt Derby gegen HSQLDB ausgetauscht. Die Datensätze zu exportieren war auch kein Problem. Die HSQLDB liegt als File im meinem Programm-Ordner:

Java:
public void getConnection() {

  String driver = "org.hsqldb.jdbc.JDBCDriver";
  String dbSystem = "jdbc:hsqldb:file:embeddedDB/database";

  try {

	Class.forName(driver).newInstance();
	co = DriverManager.getConnection(dbSystem, "", "");

  } catch (Exception ex) {
		System.out.println(ex);
  }

}

Wie stelle ich nun eine Verbindung mit einer DB her, die auf einem Server liegt, und unter z.B.: folgender Adresse erreichbar ist: www.meineURL/embeddedDB/database

Vorne weg: Ich habe (fast) keine Ahnung, wenn es um Netztwerke, Server, Servlets o.ä. geht.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F MySQL Verbindung zum SQL-Server Datenbankprogrammierung 27
I Es kann keine Verbindung zum Server aufgebaut werden Datenbankprogrammierung 12
M MySQL Verbindung zum Server aufbauen ohne DB ansprechen Datenbankprogrammierung 2
F MSSQL-Server Verbindung Datenbankprogrammierung 5
DStrohma MS SQL Server 2005 + Java: Immer nur eine aktive Verbindung erlaubt? Datenbankprogrammierung 5
G jdbc grundlegende verbindung zu sql server geht nicht Datenbankprogrammierung 9
G JDBC Verbindung zu MySQL-Server auf lokalem Rechner Datenbankprogrammierung 5
TheSkyRider MySQL Datenbankzuordnung in Verbindung mit Java Datenbankprogrammierung 7
raptorrs Plötzlich keine Verbindung zur Datenbank mehr möglich Datenbankprogrammierung 14
OnDemand SSL Verbindung zu externer DB Datenbankprogrammierung 5
C MySQL Remote Verbindung zu MariaDB Datenbankprogrammierung 11
M SQL , CSV Verbindung : Zu Umfangreicher Code durch Unwissenheit Datenbankprogrammierung 21
P Verbindung zu einer Access Datenbank per Eclipse oder Intellij Datenbankprogrammierung 0
Z Beim schließen des Programms die verbindung zur DB beenden. Datenbankprogrammierung 4
Husamoli345 JSF-JDBC Verbindung Crud Datenbankprogrammierung 15
V keine Verbindung möglich (Access-DB) Datenbankprogrammierung 3
H MySQL Verbindung Datenbank und Eclipse (Java) Datenbankprogrammierung 5
M Oracle SQLException: Verbindung getrennt Datenbankprogrammierung 2
S Verbindung von einer Excel Datei zu Java Datenbankprogrammierung 2
C Verbindung mit SQLExpress Datenbankprogrammierung 9
S E(fx)clipse Verbindung zu MS SQL Express aufbauen Datenbankprogrammierung 7
M H2 Verbindung zur Datenbank komplett schließen Datenbankprogrammierung 11
H MySQL MySQL - Keine Verbindung zur Datenbank?! Datenbankprogrammierung 4
G MySQL Problem mit MySQL verbindung Datenbankprogrammierung 8
Thallius MySQL jdbc schließt Verbindung nach vielen Request von selber Datenbankprogrammierung 8
C datenbank verbindung config Datenbankprogrammierung 23
I MariaDB-Verbindung in JAVA Datenbankprogrammierung 11
J Verbindung aufbauen Datenbankprogrammierung 7
S DB2 Express C - keine Verbindung zur Datenbank Datenbankprogrammierung 2
Thallius MySQL Merkwürdiges JDBC Verhalten bei VPN Verbindung. Datenbankprogrammierung 7
P MySQL-Verbindung in anderer Klasse nutzen Datenbankprogrammierung 2
W Keine ODBC-Verbindung zur MSAccess-Datenbank Datenbankprogrammierung 2
S Auslagern der Datenbank Verbindung Datenbankprogrammierung 2
M Verbindung von Java Programm zur Acccess Datenbank (mdb-Datei) Datenbankprogrammierung 0
D NullPointerException bei DB Verbindung Datenbankprogrammierung 6
AssELAss Verbindung i5 Series 7.1 / 7.2 (DB2) mit Oracle SQL Developer Datenbankprogrammierung 3
J Verbindung zu Derby Datenbank funktioniert nicht Datenbankprogrammierung 14
D Java MS Access Verbindung Datenbankprogrammierung 10
X MySQL DB-verbindung ohne JDBC/ODBC Datenbankprogrammierung 1
J Keine Verbindung zu MSSQL DB mit JDBC Datenbankprogrammierung 3
A Verbindung mit Access 2007 Datenbank herstellen Datenbankprogrammierung 1
I Datenbank Verbindung geht nicht Datenbankprogrammierung 2
N MySQL com.microsoft.sqlserver.jdbc.SQLServerException: Die Verbindung wurde geschlossen. Datenbankprogrammierung 1
1 MySQL Verbindung mit localhost als IP funktioniert, aber mit normaler IP nicht Datenbankprogrammierung 2
A Nach Export mysql Verbindung zur Datenbank nicht möglich, was tun? Datenbankprogrammierung 7
Helgon H2 Verbindung öffnen/schließen - Dauer, wann, wie lange? Datenbankprogrammierung 2
J Verbindung zu Access Datenbank Datenbankprogrammierung 15
J Verbindung zu Datenbank herstellen Datenbankprogrammierung 26
P MySQL Verbindung nach außen sehr langsam Datenbankprogrammierung 4
P JDBC Verbindung zur DB klappt nicht Datenbankprogrammierung 6
J Java - JDBC Verbindung zur Datenbank nicht möglich Datenbankprogrammierung 10
T MySQL Sichere Verbindung Datenbankprogrammierung 6
T MySQL Kann Verbindung zur MySQL Datenbank nicht herstellen. Datenbankprogrammierung 4
S Google Web Toolkit LDAP - Verbindung Datenbankprogrammierung 2
pg1337 Verbindung mit postgres - eclipse Datenbankprogrammierung 4
M Verbindung mit MSSQL hängt! Datenbankprogrammierung 2
T NullPointerException bei Verbindung zur Datenbank Datenbankprogrammierung 4
J DB2 Verbindung zu AS400 Datenbankprogrammierung 6
F PostgreSQL JPA und Hibernate - Verbindung zur DB Datenbankprogrammierung 7
J MySQL Verbindung über JDBC scheitert immer Datenbankprogrammierung 2
M MySQL getConnection - Verbindung Problem Datenbankprogrammierung 2
T mdb Verbindung ohne Registrierung der Datenquelle im OS Datenbankprogrammierung 14
K MySQL Verbindung funktioniert in Netbeans aber .jar funktioniert nicht Datenbankprogrammierung 5
jeppi MySQL Design-Problem: DB-Verbindung herstellen und halten - JdbcRowSet / Idle-Timeout? Datenbankprogrammierung 9
S Hibernate in Verbindung mit Hsql Datenbankprogrammierung 2
D Oracle Verbindung mit Java zu Datenbank Datenbankprogrammierung 8
E Hibernate Problem bei bidirektionaler 1:n Verbindung Datenbankprogrammierung 2
G MySQL Tables 1:1 verbindung Datenbankprogrammierung 14
B JDBC Verbindung mit Postgresql Datenbankprogrammierung 13
U MSSQL Verbindung steht, aber meckert beim Statement Datenbankprogrammierung 2
G JDBC-Verbindung: User wechseln Datenbankprogrammierung 2
F Kann keine Verbindung mit HSQLDB aufbauen Datenbankprogrammierung 2
N Trennt sich die Verbindung zur DB (MySQL) automatisch? Datenbankprogrammierung 3
X JDBC Verbindung in einer Funktion Datenbankprogrammierung 9
O HSQLDB Verbindung schlägt fehl Datenbankprogrammierung 3
C DB2/AS400 Verbindung Datenbankprogrammierung 2
T Form, Verbindung Feld -> DB Datenbankprogrammierung 3
J Verbindung zur Datenbank schlägt fehl... Datenbankprogrammierung 2
C keine Verbindung zur MS-SQL-Datenbank mehr Datenbankprogrammierung 4
Y Keine verbindung mit der Datenbank Datenbankprogrammierung 2
G verbindung 2er Tabellen Datenbankprogrammierung 3
G persistence.xml für MySQL - Verbindung Datenbankprogrammierung 6
C Keine Verbindung Datenbankprogrammierung 12
G 2 Tabellen in einer 1:n Verbindung Datenbankprogrammierung 2
G Verbindung mit Eclipse auf Datenbank einrichten Datenbankprogrammierung 3
M Verbindung zu Oracle DB Datenbankprogrammierung 4
U *.mdb Datenbank Verbindung mit Pfadangabe Datenbankprogrammierung 3
sparrow Objekt mit lazy-verbindung komplettieren Datenbankprogrammierung 13
M jbcd : odbc Verbindung zu Accessdatei (*.mdb) Datenbankprogrammierung 9
S Fehler bei DB Verbindung Access Datenbankprogrammierung 6
M DB-Verbindung zu DB in Projektordner möglich? Datenbankprogrammierung 17
M Passwortvergabe bei Verbindung zwischen jdbc und mysqlServer Datenbankprogrammierung 2
M Verbindung überprüfen und bei Bedarf neu aufbauen Datenbankprogrammierung 3
M Fehler bei der Verbindung zu einer MSSQL/Express Datenbank! Datenbankprogrammierung 17
B fehlerhafte PostgreSQL-Verbindung Datenbankprogrammierung 4
C Keine Verbindung zu HSQLDB möglich Datenbankprogrammierung 22
S PostgreSQL Verbindung kommt nicht zu stande Datenbankprogrammierung 3
B MySQL-Verbindung ausschließlich zu localhost möglich Datenbankprogrammierung 7
P Verbindung zu einer Datenbank Datenbankprogrammierung 6
S Gleiche Verbindung funktioniert einmal und einmal nicht Datenbankprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben