3

Вопрос по java – Как запустить программу базы данных вне среды IDE Netbeans?

Я действительно новичок в базе данных, и это моя первая программа в базе данных с использованием Java Netbeans 7.1 --- В нашей стране сейчас лето, и я студент с курсом I.T. Наш следующий предмет по программированию посвящен базам данных, ...

Учебник, на который вы ссылаетесь, настолько плох, что нереален. Конечно, он показывает, как подключиться к базе данных и установить значения в пользовательском интерфейсе Swing, но при этом не видно<code>Connection</code> когда-либо закрыты и логика пользовательского интерфейса смешивается с логикой базы данных. Он просто пытается объединить слишком много концепций в одном учебном пособии. Имейте в виду, что приложение, которое оно создает, даже близко не похоже на то, как в реальном мире создается мультиклиентское приложение, которое обращается к базе данных.

от Nick Holt

Программа успешно запущена в IDE Netbeans, но не только в исполняемом файле jar.

от JustNoobWillingToLearn

Что является исключением, когда вы запускаете программу, используя только исполняемый файл jar?

от Kartoch

3 ответа

0

Если вы используете окно, добавьте источники данных ODBC из Администрирования в драйвер Java Derby и запустите jar.

0

База данных по умолчанию в Netbeans - это Derby / JavaDB. Так что вам нужно:

  • add the jar of javadb/derby in our classpath (it maybe already present, as it is bundled with java when you install it in Ubuntu)
  • setup a path with the jdbc URI to save the database data

Я лично рекомендую использоватьHSQLDB или жеH2 для этого: они поддерживают базу данных в памяти, очень полезную для отдельного проекта без постоянных данных или для тестов.

2

Правильно, из вашего описания, кажется, есть пара вещей, которые вы путаете.

Во-первых, базы данных обычно запускаются как серверы, к которым подключаются несколько клиентов, что позволяет им содержать общий доступ. Когда вы запускаете Java DB, вы запускаете сервер базы данных Java DB.

При этом легкие базы данных, такие как Java DB, могут работать во встроенном режиме, как объяснено.Вот, Помните, что каталог, на который вы указываетеderby.system.home свойство должно содержать файлы базы данных, если вам не нужно создавать это также программно.

Во-вторых, существуют различные способы запуска Java-приложения вне IDE, но сами jar-файлы не исполняются так же, как exe-файл в Windows.

Самый простой способ - вызвать исполняемый файл java, передав необходимый путь к классу и имя класса, содержащего метод main. Например, если у меня был класс с именемcom.example.Application который был скомпилирован в каталогC:\dev\example\classes следующая командная строка будет запускать приложение:

java -cp C:\dev\example\classes com.example.Application

Если бы существовали зависимости от внешних библиотек, как это будет в вашем случае с драйвером Derby JDBC, то их также необходимо включить в путь к классам, что приведет к чему-то вроде:

java -cp C:\dev\example\classes;C:\dev\lib\derby.jar com.example.Application

На панели запуска Java есть полный набор документовВот.

Теперь вернемся к банке. Как я уже сказал, jars не являются исполняемыми, но есть что-то, что известно как «исполняемый jar». Это то же самое, что и любой jar, за исключением того, что в манифест есть некоторые специальные дополнения для указания точки входа приложения или основного класса и пути к классу, как описаноВот.

Как только основной класс и путь к классу указаны в манифесте jar, следующая командная строка запустит приложение:

java -jar C:\dev\example.jar

Вы даже можете связать расширение jar с java exe, и двойной щелчок по jar вызовет запуск приложения (хотя на компьютере разработчика, вероятно, более полезно связать расширение jar с WinZip или simlar, чтобы открыть этот jar ).

Похожие вопросы