SQLite in JAR

Scruffy

Mitglied
Gibt es eine Möglichkeit eine SQLite Datenbank in der JAR Datei, in der auch das Programm verpackt wird, zu verpacken und die zur Laufzeit zu benutzen?
 

Scruffy

Mitglied
Ja, den hab ich schon heruntergeladen. Das Problem ist wenn ich versuche auf die Datenbankdatei zuzugreifen: Wenn diese "irgendwo" auf der Festplatte liegt bekommt ich den Zugriff hin, sobald diese Datei aber im JAR verpackt wird, weiß ich nicht wie ich darauf zugreifen kann.

Was muß ich an die folgende Stelle mit dem "Test.db" schreiben? Die Test.db liegt im Package database.
Java:
Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
 

dmike

Bekanntes Mitglied
Jein du kannst normalerweise aus einem Jar kein Klassen eines anderen Jars aufrufen, selbst wenn sich beide zusammen in ein und dem selben ÜberJar befinden. im unterschied zu WAR Archiven. .... Offiziel unterstützt das der URL Mechanismus der Jarloaders einfach nicht.

Das geht trotzdem halbwegs... aber dann nur mit diversen fiesen Tricks (URL rewriting). Aber auch nur mit reinen Java Klassen. Sobald eine native Lib dabei ist, hört der Spaß auf. Native Libs müssen in Filesystem ausgepepackt werden und können nur von dort geladen werden.

Also das billigste Verfahren ist einfach du unzippst das gesamt Jar irgendwo in ein Temp Verz. und lädst von dort die Klassen ganz Normal über das Filesystem ein.

Note: Alles was JDBC betrifft läuft dann im Scope deines Classloaders. Klassen die vom Classloader der JVM beimbootstrap geladen wurden haben evtl. keinen Zugriff auf deinen JDBC Scope. Das müsstes du dann mit Interfacen und Proxies lösen.
 

mvitz

Top Contributor
Glaube ihr habt ihn noch nicht ganz verstanden. Ihm gehts afaik gar nicht darum, auf irgendwelche Jar Dateien oder Java Klassen zuzugreifen, sondern auf die Datenbankdatei, die SQLLite benutzt.

Mein Vorposter hatte allerdings recht darin, dass die Manipulation von Dateien innerhalb eines JARs zur Laufzeit nicht möglich ist. Dir wird also nichts weiteres übrig bleiben, als die Datenbankdatei irgendwo außerhalb zu platzieren.
 

HoaX

Top Contributor
Muss es denn unbedingt SQLite sein? Derby und Konsorten sollten alle auch mit Datenbanken innerhalb eines Jars umgehen können. (Nur lesend!)
 

Scruffy

Mitglied
Danke für die Antworten. Dann werde ich die Datei außerhalb des Archives plazieren müssen.

Auch andere DB's können in dem Fall anscheind nicht schreibend darauf zugreifen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T SQLite Alternativen zu SQlite, dateibasiert, leicht verschlüsselbar, Nutzerverwaltung Datenbankprogrammierung 21
B SQLite + jdbc + IntelliJ-Consumer = "No suitable driver found..." Datenbankprogrammierung 15
Maxim6394 JPA 3.2 & SQLite - LocalDateTime wird falsch geladen Datenbankprogrammierung 1
Maxim6394 EclipseLink + SQLite | Unable to acquire a connection from driver [null] Datenbankprogrammierung 6
J SQLite Abfrage fehlerhaft - komme nicht weiter - please help. Datenbankprogrammierung 3
thor_norsk SQLite Fehlermeldung Datenbankprogrammierung 4
N JDBC SQLITE und Cascading Datenbankprogrammierung 2
B SQlite Datenbank, trotz Statements wurden nicht alle Zeilen erzeugt? Datenbankprogrammierung 35
B SQLite Befehl bauen? Datenbankprogrammierung 4
D SQLite Datenbank in Android Studio (Java) durchsuchen Datenbankprogrammierung 3
thobren Projekt SQlite! Wie kann ich auf auf SQlite Daten zugreifen? Datenbankprogrammierung 4
Davee SQLite SQLite Datenbank lässt sich nicht auf anderen PCs öffnen Datenbankprogrammierung 8
B Wie kopieren ich eine Spalte von einer Tabelle in eine andere Tabelle SQLite durch java code? Datenbankprogrammierung 26
D SQLite Collections oder Arrays in SQLite abbilden Datenbankprogrammierung 7
N ORM für Sqlite Datenbankprogrammierung 4
M SQLite Datenbank mit SQLite Datenbankprogrammierung 7
N Sqlite DB mit Java wird auf Linuxsystem nicht gefunden Datenbankprogrammierung 9
N SQLite Datenbankprogrammierung 2
S Daten von SQLite Datenbank nutzen Datenbankprogrammierung 5
B SQLite Frage zu SQLite Datenbankverbindung Datenbankprogrammierung 7
E Sqlite-jdbc Mitliefern Datenbankprogrammierung 4
X Sqlite Fks Datenbankprogrammierung 4
C JDBC und SQLite Datenbank Datenbankprogrammierung 8
X SQLite SQLite Programm beendet/führt nicht weiter aus Datenbankprogrammierung 12
Sam96 SQLite mit JavaFX Datenbankprogrammierung 1
T sqlite select Datenbankprogrammierung 12
V SQLite Performance: 1 Datei mit einzelnen Einträgen gegenüber SQLite Datenbankprogrammierung 7
F Java SQLite Error Datenbankprogrammierung 19
F Sqlite cannot commit Datenbankprogrammierung 2
H SQLite Sqlite Datenbank direkt einbinden. Datenbankprogrammierung 5
U Dom Parser und SQLite füllen Datenbankprogrammierung 5
D SQLite Datenkbank auf WebServer möglich? Datenbankprogrammierung 4
M Datenbankausgabe .jsp per SQLite Datenbankprogrammierung 7
J SQLite Login Datenbank Datenbankprogrammierung 2
M SQLite Einstieg mit SQLite, wohin mit der DLL? Datenbankprogrammierung 7
M SQLite Speicherpfad Datenbankprogrammierung 0
G SQLite SQLite Select für View vereinfachen/optimieren Datenbankprogrammierung 4
G sqlite innerjoin Datenbankprogrammierung 5
G SQLite Daten aus SQLite DB in andere SQLite DB importieren Datenbankprogrammierung 4
R sqlite UPDATE wirkt nicht aus Java Datenbankprogrammierung 7
G SQLite SQLite Abfrage Datenbankprogrammierung 4
F SQLite-Extensions unter Java Datenbankprogrammierung 2
H SQLite mit DefaultTableModel synchronisieren Datenbankprogrammierung 5
D SQLite Statement nimmt keine Namen aus getter-Methoden Datenbankprogrammierung 11
L SQLite fügt nur den ersten Datensatz ein Datenbankprogrammierung 2
S SQLite Ausführbares Jar mit SQLite DB Datenbankprogrammierung 4
F [SQLite] Mehrere Datensätze einfügen Datenbankprogrammierung 12
H SQLite Datenkbank erstellen Datenbankprogrammierung 3
S Abfrage auf SQLite-DB Datenbankprogrammierung 2
Kasoki SQLite SQLite oder doch XML!? Datenbankprogrammierung 2
G SQLite Abfrage, ob in Tabelle X Spalte Y existiert Datenbankprogrammierung 4
G SQLJet (SQLite) - Mehrbenutzerzugriff auf Datenbank handhaben Datenbankprogrammierung 1
J SQLite --> Java SDK Datenbankprogrammierung 7
P Datenbank für Java Anwendung wie SQLite ohne Installation Datenbankprogrammierung 4
P Sqlite API für JAVA ? Datenbankprogrammierung 9
feuervogel SQLite unter Linux mit Eclipse einrichten Datenbankprogrammierung 8
K SQLite Datenbankprogrammierung 5
S SQLite oder RDBMS als Datei(nicht Client/Server) Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben