Ответ 1
Derby, и Hypersonic SQL может быть запущен в режиме памяти и сервера.
Существуют ли библиотеки для создания программ в Java, которые используют файл в качестве базы данных, и вам не нужно устанавливать службы баз данных на компьютер, который вы собираетесь использовать?
Derby, и Hypersonic SQL может быть запущен в режиме памяти и сервера.
Как насчет H2?
H2 - система управления реляционными базами данных, написанная на Java. Он может быть встроен в Java-приложения или запускаться в режиме клиент-сервер. Объем диска (размер файла jar) составляет около 1 МБ. (Википедия)
существует очень хорошая привязка к SQLite базы данных под названием SqliteJDBC:
Мы успешно используем http://www.sqlite.org/ вместе с http://www.zentus.com/sqlitejdbc/ как драйвер JDBC.
Если кто-то ищет очень простую файловую базу данных, попробуйте эту более раннюю низкоуровневую базу данных, которая очень проста понимать. Это учебник, но вы можете скачать полный исходный код здесь.
В основном он использует простой RandomAccessFile и стандартную сериализацию java, поэтому вы можете хранить все сериализуемое, и вам не нужна какая-либо специальная конфигурация или аннотации в ваших объектах для ее использования. Нет необходимости в каких-либо библиотеках.
MapDB предоставляет параллельные Карты, Наборы и Очереди, поддерживаемые дисковой памятью или памятью без памяти. Это быстрый и простой в использовании встроенный механизм базы данных Java.
Derby может работать во встроенном режиме, как указано выше. Фактически он включен в Java 6 SE и вместо этого называется Java DB (хотя это действительно просто Apache Derby). Он довольно прост в использовании, хотя инструмент базы данных по умолчанию (ij) невелик. Я бы использовал что-то вроде SQuirreL SQL для просмотра данных.
Помимо уже упомянутых встроенных реляционных баз данных существуют также нереляционные встроенные базы данных Java, такие как exist (XML DB) или db4o (объект DB).
Например HSQLDB или Apache Derby может работать в режиме Embedded.