powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопросы дилетанта
78 сообщений из 78, показаны все 4 страниц
Вопросы дилетанта
    #39572808
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, возникают вопросы, на которые у вас найдутся ответы быстрее, чем перечитать еще тучу мануалов и форумов. Хотя это никто не отменял.
Заранее извиняюсь за вероятные глупые вопросы))) все мы когда то начинаем...
1. Для взаимодействия с ДБ можно использовать JDBC, Spring, Hibernate. Понятно, что чистый JDBC не в почете. Если мне нужно написать приложение с GUI, клиент сервер. Используются хранимки. Вопрос. Что лучше использовать библиотеки или чистый JDBC.

2. Я понимаю, что придется написать свой класс для коннекта и потом подсовывать ему название хранимки с параметрами и получать обратно рекордсет. Кстати, именно, эти классы, как пример, все называют слоем? Слой взаимодействия с БД?

3. Туговато приходится с проектированием (Access-шник я). Выделить необходимые классы. При нормальной БД (нормализация подразумевается), можно ли говорить о том, что структура классов приблизительно соответствует структуре таблиц?
Пример таблиц: ТипыЮзеров - Юзеры. Родит. класс - Юзеры, наследники - по типам юзеров?

4. Правильно ли я понимаю, что Spring, Hibernate используют, пусть и объектную модель, но подключение к каждой таблице индивидуально? Или там есть возможность сборки строки SQL для получения рекордсета.

5. Swing. Читал на форумах, что сначала пишется вся работа с данными (показать, обновить и пр.) и только потом строится GUI. Т.е. по сути, потом в форме поднимается нужный класс нужных данных и работаем с ним, так?

6. То, что в java книжках называется кучей. Есть ли с ней какое то взаимодействие? Или придется писать свои классы (ArrayList как я понял) для хранения поднятых экземпляров форм (AllForms из Access, если кто то вдруг знает) и уже через него работать с экземплярами форм.

7. Будет ли возможность в Swing проекте динамически (в процессе работы приложения) добавлять вкладки (MDI интерфейс) как в главном окне, так и в дочернем. Можно конечно сделать все на простых вкладках (TabbedPane) но хотелось бы масштабируемости.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39572864
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан1. Для взаимодействия с ДБ можно использовать JDBC, Spring, Hibernate. Понятно, что чистый JDBC не в почете. Если мне нужно написать приложение с GUI, клиент сервер. Используются хранимки. Вопрос. Что лучше использовать библиотеки или чистый JDBC.
"чистый JDBC" можно использовать. Но количество boilerplate кода, который он требует просто заоблачное. Лучше использовать библиотеки, но помимо перечисленных стоит обратить внимание на myBatis, jOOQ, QueryDSL

Игортан2. Я понимаю, что придется написать свой класс для коннекта и потом подсовывать ему название хранимки с параметрами и получать обратно рекордсет. Кстати, именно, эти классы, как пример, все называют слоем? Слой взаимодействия с БД?
Abstract Layer это такой паттерн. Можно всё одним слоем, а можно в несколькт слоёв, тут уж как сделаешь.

Игортан3. Туговато приходится с проектированием (Access-шник я). Выделить необходимые классы. При нормальной БД (нормализация подразумевается), можно ли говорить о том, что структура классов приблизительно соответствует структуре таблиц?
Пример таблиц: ТипыЮзеров - Юзеры. Родит. класс - Юзеры, наследники - по типам юзеров?

Да, классы соответствуют таблицам. С наследованием нужно быть осторожным, оно бывает всякое. Нужно ли оно в вашем случае - вопрос открытый.

Игортан4. Правильно ли я понимаю, что Spring, Hibernate используют, пусть и объектную модель, но подключение к каждой таблице индивидуально? Или там есть возможность сборки строки SQL для получения рекордсета.

Spring не работает с базой данных. Есть Spring Data и есть Spring JdbcTemplate. Общераспространенные базы данных не предоставляют возможности подключения к "индивидуальным таблицам". Подключение происходит к серверу, а само подключение, обычно работает в контексте некой схемы или именованой БД внутри сервера. Либо вы путаете "подключение" и "запрос".

В Hibernate нет рекордсетов. Есть маппинг объектов на таблицы.

Игортан5. Swing. Читал на форумах, что сначала пишется вся работа с данными (показать, обновить и пр.) и только потом строится GUI. Т.е. по сути, потом в форме поднимается нужный класс нужных данных и работаем с ним, так?
Сначала строится модель предметной области из сущностей и процессов. Потом пишется БД для хранения сущностей и реализация процессов, которая оборачивается в некий API. А GUI уже использует API. Swing к вашему вопросу отношения не имеет.

Игортан6. То, что в java книжках называется кучей. Есть ли с ней какое то взаимодействие? Или придется писать свои классы (ArrayList как я понял) для хранения поднятых экземпляров форм (AllForms из Access, если кто то вдруг знает) и уже через него работать с экземплярами форм.
Кучей в Java называется хранение объектов в памяти. ArrayList это одна из многих "коллекций". К "куче" отношения не имеет. GUI слой работает со слоем модели предметной области. Не нужно пытатьcя натягивать терминолгию и подходы Access вообще на всё. Формы это о вводе данных, а не о модели предметной области.

Игортан7. Будет ли возможность в Swing проекте динамически (в процессе работы приложения) добавлять вкладки (MDI интерфейс) как в главном окне, так и в дочернем. Можно конечно сделать все на простых вкладках (TabbedPane) но хотелось бы масштабируемости.
В Swing можно вообще всё. Но почти всё в нём делается через одно место. MDI в нём, конечно же, есть. Но вам стоит обратить внимание на JavaFX, как мне кажется
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573003
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Спасибо за разъяснения!

Если не затруднит, я потом задам уточняющие вопросы.
Сейчас нужно это переварить...
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573018
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанИспользуются хранимки. Вопрос. Что лучше использовать библиотеки или чистый JDBC.используя хранимки библиотеки можно смело выкинуть.
ИгортанТуговато приходится с проектированием (Access-шник я).вспомни как работал с данным, хранимками, запросами - всё станет намного понятнее - я тоже вышел из акса, и опыт полученный по работе с базами - говорит, что все прокладки типа хибера, должны идти лесом.
хранимки могут подготовить данные намного лучше и быстрее всяких прокладок.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573047
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Проблема, что так java не изучишь
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573077
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123вадя,
Проблема, что так java не изучишьаргумент веский , но спорный.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573152
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Blazkowicz"чистый JDBC" можно использовать. Но количество boilerplate кода, который он требует просто заоблачное. Лучше использовать библиотеки, но помимо перечисленных стоит обратить внимание на myBatis, jOOQ, QueryDSL Да, понимаю, что это механизм есть, налажен и повсеместно применяется. Единственное уточнение - БД уже есть, работа с данными построена через хранимки. В данном, конкретном, случае - скорее нужно написать класс коннекта к бд и на выход отдавать рекордсет. Я уже пробник сделал по коннекту, кода всего ничего. Добавить гетер для передачи рекордсета. Вот и все взаимодействие с бд.
Конечно, могу ошибаться. Думаю еще в сторону пула соединений...
BlazkowiczAbstract Layer это такой паттерн. Можно всё одним слоем, а можно в несколькт слоёв, тут уж как сделаешь. Тут я все ми частями тела, за. Лучше привыкать изначально делать правильно...
BlazkowiczВ Hibernate нет рекордсетов. Есть маппинг объектов на таблицы. Да, у меня и сложилось впечатление, что там делается объект на каждую таблицу/строку и потому код повторяется много раз. Это скорее для работы с бд без серверной логики, например SQLite. Она вроде хранимки и т.д. не поддерживает. Но для общего понимания картины понадобится, чуть позже.
BlazkowiczКучей в Java называется хранение объектов в памяти. ArrayList это одна из многих "коллекций". Тут не понял, можно как то взаимодействовать с кучей или доступ туда закрыт и для работы с объектами нужно использовать только коллекции (не массивы) ?
BlazkowiczНо вам стоит обратить внимание на JavaFX, как мне кажется Уже круг навернул. Swing, FX, Web. Вернулся мыслями к Swing. Для остальных придется параллельно еще изучать и эти технологии. Наверное, для первого раза тяжеловато будет поднять несколько технологий одновременно.
BlazkowiczС наследованием нужно быть осторожным, оно бывает всякое. Если можно, разъясните, кроме видимости классов.
BlazkowiczСначала строится модель предметной области из сущностей и процессов. Потом пишется БД для хранения сущностей и реализация процессов, которая оборачивается в некий API. А GUI уже использует API. Можно ли сказать, что в моем варианте: С БД(таблицы/вьюхи+хранимки) - остается только сделать механизм вызова хранимки и присваивания рекордсета/данных контролам на фреймах. Некий маленький класс по вызову хранимок с параметрами?

как можно реализовать такое в java:
В Access у меня был модуль "интерфейса", с него дергались основные процессы на разных формах. Читал чуток про классы интерфейсы, но они пишутся для каждого фрейма/слоя? А один "глобальный".
Был класс "прослушки событий", подписанные на него(поднявшие его экземпляр) "слушали" события. Если происходило событие для конкретной формы, то выполнялись определенные действия.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573204
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанГоспода, возникают вопросы, на которые у вас найдутся ответы быстрее, чем перечитать еще тучу мануалов и форумов. Хотя это никто не отменял.
Заранее извиняюсь за вероятные глупые вопросы))) все мы когда то начинаем...
1. Для взаимодействия с ДБ можно использовать JDBC, Spring, Hibernate. Понятно, что чистый JDBC не в почете. Если мне нужно написать приложение с GUI, клиент сервер. Используются хранимки. Вопрос. Что лучше использовать библиотеки или чистый JDBC.


ОРМ и Хранимки - зло
Точнее.
ОРМ зло - потому что берет все самое худшее из двух моделей (РМД и ОО).
ХП зло - потому что через некоторое время это все превращается в не поддерживаемый кусок Г, который работает по принципу "работает не трогай".

А так. Если у вас очень простая задача, и работа с БД сводится к элементарным CRUD, то берете Spring data jpa и радуетесь жизни. Если сложность начинает возрастать, то берете что-нибудь "попроще", например JdbcTempalte.

В ХП очень желательно никакую сложную БЛ не хранить/реализовывать.
Т.к. система управления версиями и проектом там в зачаточном состоянии (читай нет)


Игортан2. Я понимаю, что придется написать свой класс для коннекта и потом подсовывать ему название хранимки с параметрами и получать обратно рекордсет. Кстати, именно, эти классы, как пример, все называют слоем? Слой взаимодействия с БД?


Нет не надо. Посмотрите в сторону Spring и JdbsTemplate.
Можете почитать про DTO...

Игортан3. Туговато приходится с проектированием (Access-шник я). Выделить необходимые классы. При нормальной БД (нормализация подразумевается), можно ли говорить о том, что структура классов приблизительно соответствует структуре таблиц?
Пример таблиц: ТипыЮзеров - Юзеры. Родит. класс - Юзеры, наследники - по типам юзеров?


Забейте.
Объектная модель и реляционная модель - это разные модели.
Поэтому проектируете модель данных (реляционная модель), объектную модель (ваши классы) и слой DTO, который преобразует одно в другое и обратно.
Учтите, что желательно спроектировать модель данных так, чтобы она практически не менялась.
А вот объектную модель наоборот, надо проектировать так, чтобы учесть что в будущем она будет меняться очень сильно.

Игортан4. Правильно ли я понимаю, что Spring, Hibernate используют, пусть и объектную модель, но подключение к каждой таблице индивидуально? Или там есть возможность сборки строки SQL для получения рекордсета.


Hibernate - пытается скрестить "ужа с ежом".
Когда объектная модель не слишком сложная (CRUD) это работает.
Как только начинается что-то более сложное, то лучше взять что-то менее "интеллектуальное".

Игортан5. Swing. Читал на форумах, что сначала пишется вся работа с данными (показать, обновить и пр.) и только потом строится GUI. Т.е. по сути, потом в форме поднимается нужный класс нужных данных и работаем с ним, так?


По хорошему до Swing должна доходить объектная модель.
А работа с БД должна прятаться где-то в глубоких слоях приложения.

Игортан6. То, что в java книжках называется кучей. Есть ли с ней какое то взаимодействие? Или придется писать свои классы (ArrayList как я понял) для хранения поднятых экземпляров форм (AllForms из Access, если кто то вдруг знает) и уже через него работать с экземплярами форм.


Пока забейте.
Просто помните у JVM есть Garbage Collector, который "тормозит".
Точнее иногда начинает "прибирать мусор", т.е. удалять не используемые объекты.
Поэтому распределение памяти и работа с ней, в первом приближении, можно отдать на откуп JVM.

Игортан7. Будет ли возможность в Swing проекте динамически (в процессе работы приложения) добавлять вкладки (MDI интерфейс) как в главном окне, так и в дочернем. Можно конечно сделать все на простых вкладках (TabbedPane) но хотелось бы масштабируемости.

По идее да...
Но я бы вам посоветовал, посмотреть в сторону web.
Например jsf.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573213
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulХП зло - потому что через некоторое время это все превращается в не поддерживаемый кусок Г, который работает по принципу "работает не трогай".очень ошибочное мнение.
ориентированное на не знающих субд "программистов".
хранимки позволяют реализовать очень многое очень быстро и меньшими усилиями и меньшим количеством кода. аналогичное можно реализовать и на jsva, но потребуется в разы больше кода и времени для написания. к тому же ни одна прокладка не сможет автоматически сделать то, что может знающий спец сделает в хранимке.
и ещё есть один пункт , про который противники хранимок умалчивают.
на примере mysql и dbForge : (если отказаться от хранимок даже для "простых" запросов, а реализовать их в виде запроса , написанного в коде java.) Реальный пример из текущего проекта. есть всего три таблицы, и для построения итоговой таблицы в веб, получается запрос состоящий и "основной" таблицы и 4 подзапросов, и это завёрнуто в подзапрос. В редакторе dbForge это (в отформатированном виде) занимает 120 строк.
я эти строки не писал, я просто в гуи мышкой двигал...
теперь , если перенести эти строки в код java - нужно сделать кучу действий, чтоб это было правильной строкой для java. запустить код, проверить... Даже если использовать тесты - это ещё и тесты надо написать.... а изменить, что-то ? это ещё та проблема...
используя хранимки - dbForge сам отформатирует, подсветит, проверит. Проверить результат - два клика - и данные готовы, изменить нет проблем.
при этом код java не меняется .
он прост и понятен
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
 try (Connection con = dataSource.getConnection();
      CallableStatement proc = con.prepareCall("{call имяХранимки(" + параметры + ")}");) {
      rs = proc.executeQuery();
      while (rs.next()) {
      ........ 
      }
  } catch (SQLException | IOException ex) {
            ex.printStackTrace();
   }


в java остаётся только распределить подготовленные отформатированные данные .
нет такой проблемы как "нередактируемые запросы" - обращение к хранимке и запись туда куда нужно, и в том порядке как нужно, и вывод нужных результатов. - в java простая вставка в нужные места - в результате "полностью редактируемая" результирующая таблица. аналогичное я добивался и в аксе в адп проектах, так же с использованием хранимок.
И хранимка мжет вернуть несколько результсетов, что тоже не маловажно.
ну про защищённость от инъекций уже было сказано :)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573215
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанЕсли мне нужно написать приложение с GUI, клиент серверя рекомендую посмотреть на JWS - java web start. запускается из браузера, но на самом деле - десктоптное приложение, нет проблем с распространением обновлений.
а если более правильно -то лучше переход на веб сразу.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573225
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetro123вадя,
Проблема, что так java не изучишьаргумент веский , но спорный.
Дак веский или спорный? ))
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573226
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадякод java - нужно сделать кучу действий,каких?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573227
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
try (Connection con = dataSource.getConnection();
      CallableStatement proc = con.prepareCall("{call имяХранимки(" + параметры + ")}");) {
      rs = proc.executeQuery();
      while (rs.next()) {
      ........ 
      }
  } catch (SQLException | IOException ex) {
            ex.printStackTrace();
   }


Если это прямо в HTML будет еще проще)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573231
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортандля хранения поднятых экземпляров форм (AllForms из Access, если кто то вдруг знает) и уже через него работать с экземплярами форм.javaFX там есть список открытых окон
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573234
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанВернулся мыслями к Swing. ещё раз - JavaFX
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573235
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяи ещё есть один пункт , про который противники хранимок умалчивают
...
он прост и понятен+1, но с оговоркой )
скорее всего это касается тех проектов, где польностью (или частично) реализована бизнес логика средствами конкретной СУБД ы .
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573236
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанМожно ли сказать, что в моем варианте: С БД(таблицы/вьюхи+хранимки) - остается только сделать механизм вызова хранимки и присваивания рекордсета/данных контролам на фреймах. Некий маленький класс по вызову хранимок с параметрами?искать слово биндинг.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573237
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usmanпольностью
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573239
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usmanвадяи ещё есть один пункт , про который противники хранимок умалчивают
...
он прост и понятен+1, но с оговоркой )
скорее всего это касается тех проектов, где польностью (или частично) реализована бизнес логика средствами конкретной СУБД ы .
только при ориентации на одну субд...во многих проетах это достаточно.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573241
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usmanвадяи ещё есть один пункт , про который противники хранимок умалчивают
...
он прост и понятен+1, но с оговоркой )
скорее всего это касается тех проектов, где польностью (или частично) реализована бизнес логика средствами конкретной СУБД ы .
под разные субд можно свои хранимки написать
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573485
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяпод разные субд можно свои хранимки написать

Вопрос не в том, что может/не может ХП.
А в том как эту "кучу Г" потом поддерживать.
Для обычных ЯП сейчас наработаны куча инструментов для разработки, поддержки и версионирования кода.
А то что есть на уровне 10-20 летней давности.

К тому же проще/дешевле поменять код на ЯП (java), чем менять код в ХП.

Кроме того структура данных для хранения должна быть как можно более "статична"/неизменяема.
А вот код, наоборот должен меняться часто, в зависимости от потребностей бизнеса.

А чтобы не надо было менять полностью весь код/приложение была придумана микросервисная архитектура.

P.S. А всякие примочки к ORM по автосозданию/изменению БД тоже зло.
Для прототипирования еще норм. Но в продакшене, только тщательно оттестированные скрипты миграции.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573491
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяпод разные субд можно свои хранимки написатьнужно в стандарт SQL ввести поддержку условной компиляции , как в Си: ифдэф/ифындэфы
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573493
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulКроме того структура данных для хранения должна быть как можно более "статична"/неизменяема.
А вот код, наоборот должен меняться часто, в зависимости от потребностей бизнеса.Хранимая процедура позволяет соблюсти оба требования. Поэтому остаётся только вопрос "привычных средств" той или иной команды разработчика.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573495
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяхранимки позволяют реализовать очень многое очень быстро и меньшими усилиями и меньшим количеством кода. аналогичное можно реализовать и на jsva, но потребуется в разы больше кода и времени для написания. к тому же ни одна прокладка не сможет автоматически сделать то, что может знающий спец сделает в хранимке.

бла-бла-бла ни о чем. Всё то же самое правда и в обратном направлении. Есть куча задач, которые хранимками ника не решить, а на Java - в пару строк. Для каждой задачи - свой инструмент.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573557
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulработа с БД сводится к элементарным CRUD нет, там все несколько сложнее...
mad_nazgulМожете почитать про DTO... с наскока не совсем понимаю, что то на границе моего понимания пока. Это просто передача туда сюда данных как объектов, без логики? Прокладка между бд и сущностями?
mad_nazgulПросто помните у JVM есть Garbage Collector нет нет, я имел ввиду есть ли в java штатный способ работы с поднятыми фреймами, или нужно создавать свои коллекции и, храня в них ссылки на фреймы, находить например конкретный фрейм или его экземпляр/инстанс. Через тот же дискриптор окна.
Да про JavaFX прочитал, спасибо.
вадя
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
 try (Connection con = dataSource.getConnection();
      CallableStatement proc = con.prepareCall("{call имяХранимки(" + параметры + ")}");) {
      rs = proc.executeQuery();
      while (rs.next()) {
      ........ 
      }
  } catch (SQLException | IOException ex) {
            ex.printStackTrace();
   }

Да. Я это все время и имел ввиду.))
Petro123ещё раз - JavaFXвадяя рекомендую посмотреть на JWS - java web start. запускается из браузера, но на самом деле - десктоптное приложениеmad_nazgulНо я бы вам посоветовал, посмотреть в сторону web.
Например jsf. )) Упорно все отговаривают от свинга. Раз есть пчелы, значит должен быть мед... будет тяжело поднять сразу несколько технологий. По времени, правда можно сказать, что не ограничен. Но везде есть правила приличия)) Слона хорошо бы есть по частям, большим куском можно подавиться))
ИгортанBlazkowiczС наследованием нужно быть осторожным, оно бывает всякое. Если можно, разъясните, кроме видимости классов. Можно хотя бы направление указать?
Игортанкак можно реализовать такое в java:
В Access у меня был модуль "интерфейса", с него дергались основные процессы на разных формах. Читал чуток про классы интерфейсы, но они пишутся для каждого фрейма/слоя? А один "глобальный".
Был класс "прослушки событий", подписанные на него(поднявшие его экземпляр) "слушали" события. Если происходило событие для конкретной формы, то выполнялись определенные действия. Как это было в Access, сразу не бейтесь))).
"Интерфейсный" - Лента меню, контекстное меню, кнопки на формах - вызывали некую паблик функцию, которая перенаправляла вызов в активное окно/форму. Сделано, как прокладка связки кнопок и конт.меню форм с лентой меню (Акс 2007 и выше)
"Прослушка" - все открытые формы/инстансы были подписаны на события в классе "прослушки". И если обращение было к ним - как то реагировали.
Второе действие как то перекликается с первым. Но на данный момент, ввиду некоторых условий, там ничего хитрее не придумал.
Как подобный механизм можно организовать в java? Или здесь принципиально другой подход?
Petro123искать слово биндинг. пока сел курить это
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573579
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, не разгоняйте холивар, действительно хочется конструктивного диалога.
Basil A. Sidorovmad_nazgulКроме того структура данных для хранения должна быть как можно более "статична"/неизменяема.
А вот код, наоборот должен меняться часто, в зависимости от потребностей бизнеса.Хранимая процедура позволяет соблюсти оба требования. Поэтому остаётся только вопрос "привычных средств" той или иной команды разработчика. С этим согласен. Есть свои привычки работы и требования проекта. Механизмы реализации где то между ними.
Blazkowiczбла-бла-бла ни о чем. Всё то же самое правда и в обратном направлении. Есть куча задач, которые хранимками ника не решить, а на Java - в пару строк. Для каждой задачи - свой инструмент. Можно чуток приоткрыть? не совсем понял
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573583
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанПрокладка между бд и сущностями?нет. Отправка в веб клиент, сериализация через сети веб.
ИгортанМожно хотя бы направление указать?
Это ОРМ без хранмок.
ИгортанКак подобный механизм можно организовать в java?
В пятый раз - javaFX
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573586
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанBlazkowiczбла-бла-бла ни о чем. Всё то же самое правда и в обратном направлении. Есть куча задач, которые хранимками ника не решить, а на Java - в пару строк. Для каждой задачи - свой инструмент. Можно чуток приоткрыть? не совсем понял
Сам холиваришь. Зачем сейчас тебе многообразие проектов?
Через неделю приходи.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573594
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Думал, для общего понимания картины будет полезно.)))
Petro123Сам холиваришь. Зачем сейчас тебе многообразие проектов?
Через неделю приходи.Наверное соглашусь. Раз это новый пласт...
Тут хоть бы FX более менее быстро подтянуть.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573622
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usmanвадяпод разные субд можно свои хранимки написатьнужно в стандарт SQL ввести поддержку условной компиляции , как в Си: ифдэф/ифындэфыхранимки они и хранятся в субд, смысл условной компиляции? при смене субд меняется только строка подключения к субд, а её можно вынести в файл .ini


mad_nazgulДля обычных ЯП сейчас наработаны куча инструментов для разработки, поддержки и версионирования кода.для субд счас тоже есть куча инструментов.
mad_nazgulК тому же проще/дешевле поменять код на ЯП (java), чем менять код в ХП.
код в хп можно поменять проще чем код java, при этом даже не требуется ничего компилировать.
просто из тестовой базы скинуть в рабочую и всё.
mad_nazgulКроме того структура данных для хранения должна быть как можно более "статична"/неизменяема.
А вот код, наоборот должен меняться часто, в зависимости от потребностей бизнеса.
ещё раз код в хранимке для смены логики меняется проще чем в java. у клиент даже не потребуется обновление делать - это может произойти между двумя кликами клиента на запрос данных
Blazkowiczбла-бла-бла ни о чем. Всё то же самое правда и в обратном направлении. Есть куча задач, которые хранимками ника не решить, а на Java - в пару строк. Для каждой задачи - свой инструмент.это уже зависит от извращённости прогера.
Игортан"Прослушка" - все открытые формы/инстансы были подписаны на события в классе "прослушки". И если обращение было к ним - как то реагировали.
Второе действие как то перекликается с первым. Но на данный момент, ввиду некоторых условий, там ничего хитрее не придумал.
Как подобный механизм можно организовать в java? Или здесь принципиально другой подход?в аксе это двузхвенная архитектура, такое очень просто реализуется в трёхзвенной архитектуре - появляется среднее звено между клиентом и субд - серверное приложение.
которое может отправлять клиенту (без запроса с клиента) любую инфу , на которую он подписан.
в аксе этого очень не хватало. приходилось опрашивать сервер.
и рекомендую использовать веб, это хоть и кажется , сложнее, но на самом деле более перспективно. не надо заботиться о клиенте - он открыл браузер и работает, хоть из окон, хоть из линуксов, хоть из яблок.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573625
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанТут хоть бы FX более менее быстро подтянуть.цель ?
просто научиться?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573633
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанТут хоть бы FX более менее быстро подтянуть.сделать нечто подобное как в аксе? в браузере это можно сделать намного проще и изящнее. Ограничений намного меньше - возможностей намного больше. и в формах и в элементах. у меня от акса остался опыт работы с базами- очень помогает, а все остальное очень элементарно реализуется. JavaFX - накладывает ограничения на область применения.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573637
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяИгортанТут хоть бы FX более менее быстро подтянуть.цель ?
просто научиться?кончай холиварить. Да, цель познать новое в десктопе.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573641
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Говорить что веб лучше десктопа - дурость.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573643
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovmad_nazgulКроме того структура данных для хранения должна быть как можно более "статична"/неизменяема.
А вот код, наоборот должен меняться часто, в зависимости от потребностей бизнеса.Хранимая процедура позволяет соблюсти оба требования. Поэтому остаётся только вопрос "привычных средств" той или иной команды разработчика.

Проблема ХП не в возможностях, а в сопровождении кода.
Например для Java есть куча гайдлайнов, как разруливать работу с кучей программистов и в долгом проекте.

Та же система контроля версий никак к СУБД не прикручивается.
В работе не может быть две разных ветки кода.
Т.к. ХП "приколочено гвоздями" к конкретной БД.

Да и понимать проект проще когда БЛ сосредоточена только в одном месте, а не размазана тонким слоем между БД и ЯП.

Но любителям ХП, это понять трудно.
Т.к. они пишут, а не читают. :-)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573647
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulПроблема ХП не в возможностях, а в сопровождении кода.Я поскипал ваш бред, т.к. SQL - (текстовый) язык высокого уровня. И к нему применимы ровно те методики разработки и управления, которые применимы ко всем остальным языкам (программирования).
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573658
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123вадя,
Говорить что веб лучше десктопа - дурость.по этому поводу уже был многостраничный холивар.
:)
я же об этом начал тут , что б ТС на старте осознанно выбрал вариант пути. У него есть опыт работы с аксом , поэтому и есть желание повторить что-то подобное. А правильно ли это? Может под его задачу подойдёт другой вариант? Что б потом не было обидно за потраченное время. и если изучать новое, почему не веб?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573660
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортанmad_nazgulработа с БД сводится к элементарным CRUD нет, там все несколько сложнее...
mad_nazgulМожете почитать про DTO... с наскока не совсем понимаю, что то на границе моего понимания пока. Это просто передача туда сюда данных как объектов, без логики? Прокладка между бд и сущностями?


Да.
Хотя логика есть, но она "простая".
Т.е. вот этот объект должен лечь в такие таблицы.
И наоборот, вот такие запросы создают вот этот объект.

Слой DTO, делает практически не нужным ХП.
Т.к. ХП обычно решают ограниченность ОРМ.
Когда нужна Entity, но она создается по сложной логике.
Ну или данные нужно сохранить так же по сложной логике.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573665
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulТ.к. ХП обычно решают ограниченность ОРМ.Хранимые процедуры решают проблему "ограничения SQL при обработке данных в СУБД", а совсем не то, о чём вы думаете.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573667
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovmad_nazgulПроблема ХП не в возможностях, а в сопровождении кода.Я поскипал ваш бред, т.к. SQL - (текстовый) язык высокого уровня. И к нему применимы ровно те методики разработки и управления, которые применимы ко всем остальным языкам (программирования).

Нет. Опыт, не только мой, говорит что не применимы.
SQL-скрипт != ХП в БД.
Т.к. ХП в отрыве от БД и данных не живет.
Код, например, на Java вполне живет.

Как минимум я не встречал ни одного легаси проекта, в котором в систему контроля версий были бы заведены ХП в актуальном состоянии (если они вообще бы были заведены).
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573676
hck1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulКак минимум я не встречал ни одного легаси проекта, в котором в систему контроля версий были бы заведены ХП в актуальном состоянии (если они вообще бы были заведены).
в ларьках да, системы контроля нет, а энтерпрайзе pl/sql патчи в субд генерятся из svn, git и прочих. твоя проблема в том что ты из деревенских и просто не видел как взрослые готовят.

mad_nazgulТ.к. ХП в отрыве от БД и данных не живет.
Код, например, на Java вполне живет.

сейчас работаю с жава и бигдата - для человека с бэкграундом оракла выглядит дико, когда код вываливается в прод, потому что схема данных не совпала с ожидаемым. до бигдата был уверен что такое как оспа, сотни лет назад побеждено навсегда.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573678
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovmad_nazgulТ.к. ХП обычно решают ограниченность ОРМ.Хранимые процедуры решают проблему "ограничения SQL при обработке данных в СУБД", а совсем не то, о чём вы думаете.

Согласен, что ХП "ограничения SQL при обработке данных в СУБД".
Но это ограничения РМД.

Поэтому я и говорю, что ОРМ берет все худшее от РМД и объектной модели.
И накладывает ненужные ограничения на обработку данных.
Из-за этого приходится где-то эту "обработку данных" делать.
Либо на стороне СУБД, чтобы было "удобно" ОРМ (Привет ХП).
Либо на стороне ЯП, но тогда "преимущества" ОРМ сходят на нет.

По мне современные ЯП более выразительные, поэтому на них удобнее писать "обработку данных".
Плюс инструменты для работы с ЯП более продвинутые чем с ХП. :-)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573691
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulПо мне современные ЯП более выразительные, поэтому на них удобнее писать "обработку данных".
Плюс инструменты для работы с ЯП более продвинутые чем с ХП. :-)просто ты не знаешь такие инструменты. А они есть. Причём возможности у них очень огромны.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573692
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulSQL-скрипт != ХП в БД.Разумеется, PL/SQL != SQL, кэп.Т.к. ХП в отрыве от БД и данных не живет.Хранимые процедуры - текст. На вполне конкретном языке программирования. Надеюсь, вас не смущает, что DDL никак не отражает представление объектов схемы внутри БД?Код, например, на Java вполне живет.У пророков есть поддержка Java в СУБД и соответствующая обвязка "у ей внутре".Как минимум я не встречал ни одного легаси проектаИ? Каким боком проблемы организации процесса разработки соотносятся с имеющимися возможностями?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573772
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяцель ?
просто научиться? Цель - проглотить и не подавиться на данном этапе знаний.
вадясделать нечто подобное как в аксе? в браузере это можно сделать намного проще и изящнее. Ограничений намного меньше - возможностей намного больше. и в формах и в элементах. у меня от акса остался опыт работы с базами- очень помогает, а все остальное очень элементарно реализуется. JavaFX - накладывает ограничения на область применения. Согласен.
Можно я порассуждаю.
FX - изучение Java + JavaFX = 2 области, с ms/my SQL знаком
WEB -Java + js + css + HTML + сервер(3 звено, как я понял - Apach) = кроме HTML(начальные знания) все остальное постигать..

Если я не прав, подскажите по различиям
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573799
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulПо мне современные ЯП более выразительные, поэтому на них удобнее писать "обработку данных".
Плюс инструменты для работы с ЯП более продвинутые чем с ХП. :-)
+10500

вадяпросто ты не знаешь такие инструменты. А они есть. Причём возможности у них очень огромны.
Я тоже не знаю. Можно пример рефакторинга на PL/SQL ?
Например как поменять сигнатуру ХП и все ее вызовы из пэкэджей (пусть будет Oracle мне понятней будет) одним тыком типа как в Eclipse (Idea) на методе?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573839
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulСогласен, что ХП "ограничения SQL при обработке данных в СУБД".
Но это ограничения РМД.Какие конкретно ограничения у модели ?Поэтому я и говорю, что ОРМ берет все худшее от РМД и объектной модели.Вас кто-то обманул. Есть вполне конкретное подмножество задач, которое позволяет автоматизировать написание SQL-запросов, опираясь на схему БД. Побочная плюшка - можно автоматизировать отображение объектов СУБД на объекты приложения, задачу управления транзакциями, кэшами и т.д. и т.п.И накладывает ненужные ограничения на обработку данных.Не более, чем любой частный инструмент. sed, например, тьюринг полный, но реализовывать на нём прикладную систему никто не будет.По мне современные ЯП более выразительные, поэтому на них удобнее писать "обработку данных".Это совершенно другой вопрос.
И без конкретизации расплывчатого "обработка данных" - отсутствует предмет обсуждения.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39573870
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanBezЯ тоже не знаю. Можно пример рефакторинга на PL/SQL ?
Например как поменять сигнатуру ХП и все ее вызовы из пэкэджей (пусть будет Oracle мне понятней будет) одним тыком типа как в Eclipse (Idea) на методе?
https://www.devart.com/ru/dbforge/oracle/studio/
ИгортанFX - изучение Java + JavaFX = 2 области, с ms/my SQL знаком
WEB -Java + js + css + HTML + сервер(3 звено, как я понял - Apach) = кроме HTML(начальные знания) все остальное постигать..

Если я не прав, подскажите по различиям
второй вариант не совсем верен
web(javascript+html5+css3) - серверное приложение(java+jsp(javascript+html5+css3+??)) - субд
причем серверное приложение и формирует веб-клиента
сам сервер приложений - кошка Том, стеклянная рыба,...
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574130
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

автори опыт полученный по работе с базами - говорит, что все прокладки типа хибера, должны идти лесом.


Вадя) Ну почем так категорично) Не надо тоже топикстартера сбивать с толку)
Пусть сам разберётся, что к чему. Почитает разные книжки, поприменяет полученные знания.
В ORM есть смысл, они нужны, нужно их умело применять.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574131
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

делаете GUI в броузере
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574134
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,


Spring, JSON, Angular
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574135
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

кстати Вы правы насчёт использования возможностей SQL сервера.
Действительно почему бы не использовать те-же хранимки?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574136
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

я тоже как бывший аксессник и человек прошедший длинную дорогу при выборе технологий добавлю:

используйте в работе Spring на back-end
и например Angular на front-end

JavaScript не бойтесь.

http://www.jhipster.tech/

Генерируйте проект. Разбирайтесь что к чему. Ничего там сложного нет, хотя материала выше крыши конечно.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574137
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадя прав.

Веб лучше десктопа.

А ничего странного в том, что моё мнение с совпадают иногда с мнением Вади.
Работа, постоянное программирование, ентерпрайз.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574141
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

По GUI найдёте много полезных курсов по этой ссылке https://itvdn.com/ru
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574142
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

front-end, JavaScript - перевернёт всё Ваше представление о GUI после Акса )
Поэтому я и гвоорю, что Вадя прав. Общие выводы у нас не просто так. А из практики.
Сразу получите адаптивный дизайн под любой девайс.
GUI будет работать так, как Вам нужно
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574152
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Basil A. Sidorov]mad_nazgulСогласен, что ХП "ограничения SQL при обработке данных в СУБД".
Но это ограничения РМД.Какие конкретно ограничения у модели ?
[quot ]

Как у любой модели у РМД есть ограничения по применимости.
Например, на РМД очень плохо "ложаться" иерархические и графовые структуры.
Изначально вообще никак.
В Oracle, есть "костыль" в виде "prior".

А если нам еще не известна структура данных, то вообще веселье.

[quot Basil A. Sidorov]
Поэтому я и говорю, что ОРМ берет все худшее от РМД и объектной модели.Вас кто-то обманул. Есть вполне конкретное подмножество задач, которое позволяет автоматизировать написание SQL-запросов, опираясь на схему БД. Побочная плюшка - можно автоматизировать отображение объектов СУБД на объекты приложения, задачу управления транзакциями, кэшами и т.д. и т.п.
[quot ]

Да есть, и она полностью покрывается Spring data JPA, например.
Но как только что-то нужно сложнее, так как минимум вылазит n+1.
Либо то, что не все возможно одним запросом получить интересующий объект.

[quot Basil A. Sidorov]
И накладывает ненужные ограничения на обработку данных.Не более, чем любой частный инструмент. sed, например, тьюринг полный, но реализовывать на нём прикладную систему никто не будет.
[quot ]

Правильно, есть более удобные инструменты.
Поэтому я и говорю, все что укладывается в РМД, делается в виде запросов и ХП не нужны.
А то что нет, то лучше взять инструмент более удобный.
Благо сейчас есть выбор из кучи ЯП, не только Java.

Basil A. SidorovПо мне современные ЯП более выразительные, поэтому на них удобнее писать "обработку данных".Это совершенно другой вопрос.
И без конкретизации расплывчатого "обработка данных" - отсутствует предмет обсуждения.

В узком смысле преобразование данных, т.е. из того вида в котором они хранятся, в вид в котором отображаются/редактируются.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574175
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NeboИгортан,

делаете GUI в броузере
Еще один.
Писать веб проект или дескоп обсуждают не в серьезном Java форуме.
А в ветке Программирование (100 сраниц) и Разработка ИС (200 сраниц по фрейду).
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574191
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulКак у любой модели у РМД есть ограничения по применимости.Это надо понимать так, что вы знаете истинный путь ?Например, на РМД очень плохо "ложаться" иерархические и графовые структуры.
Изначально вообще никак.
В Oracle, есть "костыль" в виде "prior".У пророков не костыль, а собственный путь - стандартизирован вариант с рекурсивными запросами. Но дело даже не в этом - иерархические и сетевые СУБД канули в маргинальное нигде не от хорошей жизни.А если нам еще не известна структура данных, то вообще веселье.Я уже предлагал не лазить на шкаф?
Накойхер (фамилие такое) вы постоянно пытаетесь применять инструмент не по назначению???
Реляционная модель, на ограниченность которой вы уже пеняли, представляет данные в виде таблиц с фиксированным числом (и типами) колонок. То, что вам хочется удобного DML для неструктурированных данных - ваши проблемы. Хотя и в этом случае прагматики от СУБД приходят на помощь.Либо то, что не все возможно одним запросом получить интересующий объект.Могу предложить два варианта на выбор:
1. Вы просто не умеете их готовить.
2. А точно надо одним запросом?
Причём, заметьте, что это не в упрёк, а подсказка.Поэтому я и говорю, все что укладывается в РМД, делается в виде запросов и ХП не нужны.Это мнение догматика. Хранимые процедуры делали прагматики. Слова похожие, но содержание - кардинально разное.В узком смысле преобразование данных, т.е. из того вида в котором они хранятся, в вид в котором отображаются/редактируются.Вы точно не умеете их готовить ...
Преобразование "из вида, в котором они храняться" делает сервер, помещающий данные в структуры протокола конкретной СУБД и клиент, извлекающий данные из этих структур. На этом пути и сервер и клиент могут многое по части представления и оформления. Особенно - специально обученный клиент.
Остальное - задача приложения. Генераторов отчётности - в том числе.

P.S. Кстати, очень характерная вещь - ваше цитирование (в сообщении, на которое я отвечаю).
Да, есть предварительный просмотр и можно поправить ошибки, но это время (которое деньги), а настоящие джедаи не ошибаются.
Поэтому берём первый вроде нормальный вариант и пилим его, ни на что не оглядываясь.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574406
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123NeboИгортан,

делаете GUI в броузере
Еще один.
Писать веб проект или дескоп обсуждают не в серьезном Java форуме.
А в ветке Программирование (100 сраниц) и Разработка ИС (200 сраниц по фрейду).


https://lifehacker.ru/2013/06/27/27-pravil-iz-kodeksa-dzhentlmena-obrazca-1875-goda/
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574414
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, хочу немного систематизировать.
выделилось 2 ветки рассмотрения.
1. ОРМ - хранимки
2. FX - Web.

Если кого не сейчас не вспомню, не обижайтесь. Чес слово)) перечитал всю ветку уже раз раз 5, в виду приходящих мыслей. И всем благодарен.

1. Basil Sidorov, mad_nazgul. Очень похоже на спор прикладника и датабазника. Вы оба правы, но каждый по своему. В Виду советаmad_nazgulПоэтому проектируете модель данных (реляционная модель), объектную модель (ваши классы) и слой DTO, который преобразует одно в другое и обратно.
Учтите, что желательно спроектировать модель данных так, чтобы она практически не менялась.
А вот объектную модель наоборот, надо проектировать так, чтобы учесть что в будущем она будет меняться очень сильно. решил пересмотреть бд. Она выросла из маленького проектика и там полно денормализованных данных + попытаюсь учесть "будущие хотелки".
Т.е. БД будет новая. Для простых выборок попробую ОРМ, с чем не справлюсь - хранимки. Да, плохо размазывать, но на данном этапе мне будет так проще. Да и не понимаю я, если честно, зачем на клиента тянуть 100500 строк, чтобы потом что то сделать с несколькими из них. Есть сервер БД, пусть пашет. А в ОРМ полезу ибо это есть преобладающее направление... Потом буду говорить - "Я Spring и Hibernate видел" )

2. вадя, Petro123, Nebo. Тоже спор... Понятно, что за web будущее. Плохо это или хорошо, но скорее всего так будет. Для себя +/- определил. Хотел к стати уточнитьвадяweb(javascript+html5+css3) - серверное приложение(java+jsp(javascript+html5+css3+??)) - субд
причем серверное приложение и формирует веб-клиента
сам сервер приложений - кошка Том, стеклянная рыба,... web(javascript+html5+css3) - будет крутиться в браузере у человека
серверное приложение(java+jsp(javascript+html5+css3+??)) - на отдельном системнике
субд - еще один системник.
Я правильно понимаю, что будет задействовано + 1 комп для серверного приложения? В этом у меня будут ограничения. Что означают вопросы в серверном приложении?
"сам сервер приложений - кошка Том, стеклянная рыба,..." - не смог понять
а вопрос "кросбраузерности" он же тоже всплывет. Даже у нас с не большим коллективом, используемых браузеров - зоопарк.

P.S. Вчера уже ночью, скачал книгу по JavaFX 2 + нашел уроки , там же есть и по JavaFX 8 уже.
Но
На Netbeans с наскока не получилось по примеру создать и скомпилировать проектик.
На Eclips(fx) даже такая есть... - по уроку по ссылке тоже не взлетело.
Проблема вроде одинаковая. Мог сам что то затупить. Ночь была глубокая...
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574421
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. 2
- вычитал в той книге...
"Что касается технологии JavaFX, то один и тот же Java-код, созданный на базе
платформы JavaFX, может запускаться как настольное приложение, которое разво-
рачивается на клиентском компьютере автономно, или разворачиваться как Java
Web Start-приложение, или отображаться в Web-браузере как JavaFX-апплет,
встроенный в HTML-страничку. "
или я еще ничего не понимаю, или это создание универсального инструмента?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574428
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это описание из Netbeans
"В IDE можно настроить проект JavaFX, чтобы он работал как самостоятельное приложение, с помощью Java Web Start или в браузере."

Кстати, у меня как раз FX никак себя не проявляет в Netbeans. Не нашел пока, как открыть рисовалку гуи
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574430
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанЧто касается технологии JavaFXобязательное требование - на клиентской машине должен быть установлен JRE, без которого приложение не запуститься
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574432
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанТ.е. БД будет новая. Для простых выборок попробую ОРМ, с чем не справлюсь - хранимки.
Раньше писали что бд с хранимками. Вы уж определитесь. Нельзя Модель делать спагетти. Или ОРМ или хранимки.
Так ничему не научитесь.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574433
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортанили я еще ничего не понимаю, или это создание универсального инструмента?это реклама. Забыть.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574437
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортанпо уроку по ссылке тоже не взлетело.создавай топик: javaFX hello world не работает.
Не делай тут помойку типа: Как я изучаю....дневник.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574439
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИгортанНе нашел пока, как открыть рисовалку гуиHello World demo это не рисовалка. Не усложняй.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574442
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123это реклама. Забыть. не в защиту , где то по средине страницы
Petro123Раньше писали что бд с хранимками. Вы уж определитесь. Так и есть, старая БД с хранимками. Пришло понимание, что лучше пересмотреть структуру бд, потому придется как минимум часть ХП переписывать. ХП - быстрее потому что умею. А ОРМ - попытка встать на новые рельсы, хотя бы для опыта.
Usmanобязательное требование - на клиентской машине должен быть установлен JRE, без которого приложение не запуститьсяДа, и если Java < 8 нужно отдельно ставить Runtime для FX, если это еще заработает...
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574471
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

всё уже сделано)

http://www.jhipster.tech/

Вам только продолжить.

Все Ваши вопросы я прошёл) Всё рассматривал) Не надо никакой JavaFX.

Весь GUI делайте в броузере. Не игнорируйте JavaScipt.

)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574490
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан не в защиту , где то по средине страницы
Да я даже не читаю.
Собака за метр чувствует что несъедобно))))

ИгортанТак и есть, старая БД с хранимками. Пришло понимание, что лучше пересмотреть структуру бд, потому придется как минимум часть ХП переписывать. ХП - быстрее потому что умею. А ОРМ - попытка встать на новые рельсы, хотя бы для опыта.
И где логика?
"Хочу встать на лыжи летом.....потому что .....лето.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574531
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортанweb(javascript+html5+css3) - будет крутиться в браузере у человекада

Игортансерверное приложение(java+jsp(javascript+html5+css3+??)) - на отдельном системнике
субд - еще один системник.это по потребностям
можно и на одном системнике, работать будет, все зависит от памяти оперативной в основном.
ну и нагрузка ....
ИгортанЧто означают вопросы в серверном приложении?это бины и прочие прибамбасы jsp (без них можно обойтись :) )
Игортан"сам сервер приложений - кошка Том, стеклянная рыба,..." - не смог понятьtomcat, glassfish :)
ИгортанНа Netbeans с наскока не получилось по примеру создать и скомпилировать проектик.это самое простое , зайди на их сайт там примеры на русском расписано. я на нём и работаю
Игортана вопрос "кросбраузерности" он же тоже всплывет. Даже у нас с не большим коллективом, используемых браузеров - зоопарк.если это для корпоративного использования - включается административный рычаг - и всё устаканивается на хроме/ мозиле - аргумент : стоимость разработки/поддержания , ie - можно исключить... всё зависит от парка осей, если есть хр - то несколько затруднено - там хром и мозилла старые, про оперу не могу сказать.

тут будут ...
но я всё ж скажу - чего не хватало в аксе - это полного дуплекса в обмене данных, тут есть websocket.
изучи и поймаешь кайф :)
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574536
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123И где логика?
"Хочу встать на лыжи летом.....потому что .....лето. где то так.
Да и на будущее... Посмотришь в запросах на должности - Java, Spring, Hibernate, ets... Что я потом скажу людям, да запилил, но это узкий индивидуальный проект. А так, хочется какие то дивиденды поиметь параллельно.
С другой стороны, если бы человек никогда не искал нового, мы бы сейчас дубинками махали, каждый у своего дерева.
Neboвсё уже сделано)

http://www.jhipster.tech/

Вам только продолжить. или я нуб в гугле или просто не знаю что ищу
как вы это находите?
Буду посмотреть.
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574540
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,
у тебя мыло действующее?
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574541
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123"Хочу встать на лыжи летом.....потому что .....лето.ну для лета тоже есть лыжи - с роликами
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574546
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяу тебя мыло действующее?да
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574547
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игортан,

смотри
...
Рейтинг: 0 / 0
Вопросы дилетанта
    #39574553
Игортан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

спасибо)
Сам не люблю длинные ветки... Спасибо за внимание всем, кто принял участие.
Пусть мал побродит пару дней в голове, где осадок даст, где в пшик выйдет....
Думаю, дальше буду целевые топики открывать по мере необходимости
...
Рейтинг: 0 / 0
78 сообщений из 78, показаны все 4 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопросы дилетанта
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]