Java-приложение с установкой базы данных - PullRequest
4 голосов
/ 23 января 2012

Я хочу сделать Java-приложение с довольно маленькой базой данных.На компьютере, на котором я хочу установить это, нет ничего от базы данных на его компьютере (нет сервера wamp, нет оракула, ничего ...).Я довольно новичок в такого рода вещах, и я не знаю, если это уже задавали, но это то, чего я хочу достичь

Теперь у меня есть пара вопросов:

  1. Это выполнимо?
  2. Что мне использовать?MySQL, Oracle, ...
  3. Как я могу это сделать?

Надеюсь, этого достаточно, чтобы получить достойный ответ.

Ответы [ 5 ]

2 голосов
/ 23 января 2012
  1. Да, это выполнимо.
  2. Для использования с Java я настоятельно рекомендую Apache Derby , поскольку
    • у вас естьогромная гибкость выбора между встроенный и клиент-сервер дБ, без необходимости рефакторинга кода для изменения режима доступа к данным
    • по сравнению с H2 или HSQLDB : в соответствии с моим опытом я нашел Apache Derby
      • гораздо более надежным / отказоустойчивым (другие встроенные СУБД, как правило, ломаются больше, чем дерби, когдасбой питания)
      • , чтобы потреблять меньше оперативной памяти
      • для повышения производительности при больших развертываниях (много строк, много данных [в микробенчмарках с небольшим количеством реальных данных H2 и HSQLDB могут на самом деле набрать очки)лучше]).
      • , чтобы быть особенно быстрым с select запросами в многопоточных средах
    • через MySql и PostgreSql
      • это на самом деле быстрее, когдавы не привязаны к процессору / сети, потому что я виделво многих случаях он работает лучше, чем они (особенно с большими БД - скажем, 10 ГБ), когда дело доходит до доступа к файловой системе (однако MySql и PostgreSql более эффективны с точки зрения использования ЦП / сети, когда это является ограничением)
    • через MySql, PostgreSql, Oracle db и т. Д.
      • это удивительно быстро (часто быстрее), с очень большими БД (скажем, 30 ГБ)- что-то, чего нельзя ожидать от СУБД, вы можете встраивать в любое приложение без развертывания / конфигурации
  3. Для начала,см.

Если вам не нужны клиенты из сети для удаленного подключения к вашей базе данных, встроенный База данных"- это то, что вы хотите реализовать.


Отказ от огняr: все приведенные выше утверждения соответствуют моему личному опыту, с проектами, над которыми я работал, и / или статьями / тестами, которые я прочитал и которым доверял, как надежные.Если не указано иное (а на самом деле я нигде не заявляю иначе :)), я имею в виду новые, не полностью настроенные, готовые установки.

1 голос
/ 23 января 2012

HSQL или используйте один из адаптеров SQLite JDBC.

1 голос
/ 23 января 2012

Я рекомендую использовать базу данных Derby. Встраивать в Java-приложение очень просто.

1 голос
/ 23 января 2012

Вероятно, вам следует использовать встроенную базу данных, например H2 или HSQLDB . Это просто простые библиотеки, которые вы добавляете в свое приложение, но они обеспечивают точно такой же интерфейс JDBC.

Вы можете использовать всю мощь базы данных SQL без каких-либо внешних зависимостей. H2, мой личный фаворит, позволяет вам создавать как в памяти, так и постоянные базы данных, вы можете по желанию подключиться к нему с помощью сокета, он может предоставлять веб-интерфейс через порт по умолчанию 8082, и так далее, и так далее. На моей машине разработчика даже не установлена ​​база данных " normal ", я всегда использую H2.

0 голосов
/ 23 января 2012

Как аппаратное обеспечение этого компьютера?Какая память процессора и жесткого диска?

Что такое ОС?У вас есть права администратора / root?

Если у вас обычный ПК с ОС Windows, и достаточно процессора, памяти и жесткого диска.

Я рекомендую вам установить mysql.Просто скачайте mysql для вашей ОС и установите его.

Ссылка для скачивания:

http://www.mysql.com/downloads/mysql/

Вот установочные документы:

http://dev.mysql.com/doc/refman/5.5/en/installing.html

Удачи.

...