0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20
|
|
1 | |
Компиляция (обычное приложение и с БД)13.02.2020, 17:26. Показов 896. Ответов 16
Метки нет (Все метки)
Добрый день!
Только-только начинаю копать JAVA, возник вопрос. Использую Netbeans. Написал простую программку, а-ля "Hello, World". Соответственно при запуске её в IDE, она компилируется и в папке с проектом, в папке /src имеем файл myprog.java Ну, её в дальнейшем можем переносить и запускать. С этим вроде понятно (или нет?). Если я буду создавать не один класс, а несколько, то итоговых файлов будет всё равно один (по идее несколько же)? Что тогда можно и нужно переносить? Понятно, что запускается тот .java, где объявлен класс main. А остальные классы будут в этой же папке, они же тоже нужны для работы программы. Сумбурно написал, но, очень надеюсь на понимание. Собственно второй вопрос, который более важен для меня. Хочу подключить базу данных. Зарегистрировал драйвер, создал БД, создал таблицу. Ну и т.д. Итог какой после компиляции? Что можно и НУЖНО скопировать на флешку, например, чтобы перенести на другой компьютер, там запустить, чтобы всё работало? P.S. В незапамятные времена писал на Delphi, в том числе и с БД. Там немного проще было. Создаешь установочный комплект, в нем есть всё. При установке приложения всё работает. Здесь, в JAVA, пока блужусь конкретно. Что и где лежит, что можно переносить, что нужно запускать Спасибо за понимание!
0
|
13.02.2020, 17:26 | |
Ответы с готовыми решениями:
16
Управляемое приложение, обычное приложение 1с 8.2 Обычное приложение (интерфейс) Обычное графическое приложение виндовс 1c 8.2 Обычное приложение. Уникальность форм |
Модератор
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,332
|
|
13.02.2020, 17:51 | 2 |
По первому вопросу достаточно загуглить всего 6 букв, 2 слова. jar и jre. Поизучай что это. Второй вопрос уже сложнее. Вообще бд это сервер и почти все бд требуют установки в систему. Вроде есть и портативные, которые достаточно подключить в виде библиотеки. Сразу советую узнать что такое maven и сборка проекта с зависимостями. Класс файлы никто не использует для запуска.
1
|
0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20
|
|
13.02.2020, 23:34 [ТС] | 3 |
да, действительно, я ступил. Конечно, .jar запускаются
а вот с БД какая-то засада получается. Как же мне его потом с linux машины переносить на Windows?
0
|
0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20
|
|
14.02.2020, 15:12 [ТС] | 4 |
а если делать через Maven, то изначально в Netbeans выбирать проект Maven -> Приложение Java
или можно Java -> Приложение Java
0
|
Модератор
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,332
|
|
14.02.2020, 15:23 | 5 |
RayEagle, Лучше первый вариант, а про бд посмотрите в сторону h2, можно использовать без установки в систему, просто подключить как библиотеку.
0
|
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
|
|
14.02.2020, 15:35 | 6 |
RayEagle, вот, я давал недавно ссылку, как это делать с MySQL Студенческая база прям очень все разжевано.
0
|
0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20
|
||||||
15.02.2020, 00:17 [ТС] | 7 | |||||
вопрос почти сюда же
подключение к БД в самой программе выглядеть должно примерно так:
0
|
Модератор
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,332
|
|
15.02.2020, 09:55 | 8 |
В новых версиях вроде можно не регистрировать драйвер, но почемуто все гайды продолжают это делать. Я регистририую драйвер немного иначе, стандартный способ имхо слишком много исключений кидает, можно вот так сделать DriverManager.registerDriver(new Driver()); предварительно импортировав сам драйвер строчкой import org.h2.Driver; а путь к базе можно прописать 3 видами, полный путь как у вас, относительный путь от рабочей папки программы jdbc:h2:./%имя% (база будет рядом с jar файлом с именем имя.h2.db) и еще можно так jdbc:h2:~/%имя% вот тут не смог найти где хранится, еще базу можно хранить в памяти, но база будет удаляться при закрытии программы, как то так jdbc:h2:mem:%имя%
1
|
0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20
|
|
15.02.2020, 13:28 [ТС] | 10 |
если писать вот так: jdbc:h2:./%имя%
то база будет в корне домашней папки (я под Ubuntu сижу) если писать вот так: jdbc:h2:~/%имя% то база вообще в корень машины улетает, поэтому, наверное, Вы и не могли её найти а я хотел, чтобы указывался относительный путь. Но, в java, похоже, в лоб так не получиться, т.к. файлы лежат по разным папкам и относительно какой считать система не знает. Судя по всему, можно прописать абсолютный путь, а потом, при сборке Maven, пути поменяются на относительные
0
|
Модератор
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,332
|
|
15.02.2020, 14:28 | 11 |
Небольшое уточнение, смотря как запускать jar программу, там берется рабочая папка программы, в линуксе она по умолчанию домашняя папка, под виндой будет папка где находится сам jar (если запускать двойным кликом по jar)
попробуйте запустить jar из командной строки предварительно перейдя в папку с jar, база появится рядом я проверял корни дисков и базы не нашел, по крайней мере под виндой Добавлено через 56 секунд На худой конец можно в программе получить расположение запускаемого файла и создать строку с адресом до подключения к бд
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
18.02.2020, 13:24 | 12 |
причем тут хиб?
RayEagle, гуглите in memory databases вот одна из первых ссылок https://www.baeldung.com/java-in-memory-databases Добавлено через 5 секунд причем тут хиб? RayEagle, гуглите in memory databases вот одна из первых ссылок https://www.baeldung.com/java-in-memory-databases
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
18.02.2020, 19:25 | 14 |
Goongala, просто как я понял рут коз тут был в выборе субд, а не в работе с ней, ну да ладно)
0
|
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
|
|
19.02.2020, 08:36 | 16 |
0
|
1246 / 858 / 265
Регистрация: 02.04.2009
Сообщений: 3,255
|
|
24.02.2020, 12:42 | 17 |
~/%имя% эквивалент /home/%имя% . Каким образом в корень? Ну только если у данного юзера home замапен на корень (в самой системе). Но это, если оно так, кончено, аберрация ещё та
0
|
24.02.2020, 12:42 | |
24.02.2020, 12:42 | |
Помогаю со студенческими работами здесь
17
Права доступа в бп 1.6 обычное приложение платформа 8.2 Сбой пользовательского интерфейса: обычное приложение Скопировать не записанный документ. обычное приложение Создание ВПФ под обычное приложение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |