2010-08-26 13 views
16

Esistono librerie che creano programmi in java che utilizza un file come database e non è necessario installare servizi di database sul computer che si intende utilizzare?Database basato su file in Java

risposta

10

Derby e Hypersonic SQL possono essere entrambi eseguiti in modalità memoria e server.

+3

+1. Questa dovrebbe essere la risposta, non sqlite che richiede librerie specifiche della piattaforma. Basta aggiungere alcuni collegamenti: http://db.apache.org/derby/ http://hsqldb.org/ http://www.h2database.com/html/main.html –

2

Derby può essere eseguito nella modalità Incorporata come menzionato sopra. In realtà è incluso in Java 6 SE e viene chiamato Java DB (sebbene sia in realtà solo Apache Derby). È abbastanza facile da usare, sebbene lo strumento di database predefinito (ij) non sia eccezionale. Vorrei usare qualcosa come SQuirreL SQL per visualizzare i dati.

2

Oltre ai già citati database relazionali incorporati, esistono anche database Java incorporati non relazionali come exist (un DB XML) o db4o (un DB oggetto).

14

Che dire di H2?

H2 è un sistema di gestione di database relazionale scritto in Java. Può essere incorporato in applicazioni Java o eseguito in modalità client-server. L'ingombro del disco (dimensione del file jar) è di circa 1 MB. (Wikipedia)

3

Se qualcuno cerca un database basato molto semplice file provare questo vecchio low-level database che è molto facile da capire. È un tutorial, ma è possibile scaricare il codice sorgente completo here.

In genere utilizza un semplice RandomAccessFile e serializzazione java standard, quindi è possibile archiviare tutto serializzabile e non è necessaria alcuna configurazione speciale o annotazioni negli oggetti per utilizzarlo. Non c'è bisogno di alcuna libreria.

3

MapDB fornisce mappe, insiemi e code simultanei supportati dall'archiviazione su disco o dalla memoria di memoria. È un motore di database Java integrato veloce e facile da usare.

https://github.com/jankotek/MapDB

http://www.mapdb.org/

+0

Tra i negozi di valore chiave, [Chronicle Map] (https://github.com/OpenHFT/Chronicle-Map) e [JetBrains Xodus] (http://jetbrains.github.io/xodus/) sono anche alternative forti (vedi [confronto dei risultati, incluso MapDB ] (http://jetbrains.github.io/xodus/#benchmarks)) – leventov

Problemi correlati