Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
Товарищи, вопрос: можно ли / безопасно ли в jsp инклудить рекурсивно? Надо обход дерева сделать с вывод на страницу в виде списка ...
5 дек 18, 14:56    [21754457]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
alex55555
Member

Откуда:
Сообщений: 1028
Korcar
Товарищи, вопрос: можно ли / безопасно ли в jsp инклудить рекурсивно? Надо обход дерева сделать с вывод на страницу в виде списка ...

Теоретически можно. Практически - контейнер может фортель выкинуть. Ну и рекурсию тупо забывают остановить некоторые.
5 дек 18, 15:40    [21754553]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar,
JSP это грубо HTML т. е. VIEW.
Есть конечно дерево HTML, но построение модели дерева и рекурсию делают в оперативке.
Прочти про MVC.
5 дек 18, 19:10    [21754852]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
WebPrj
Korcar,
JSP это грубо HTML т. е. VIEW.
Есть конечно дерево HTML, но построение модели дерева и рекурсию делают в оперативке.
Прочти про MVC.

это че, принцип построения фреймворка? в моем проекте фреймворки не используются. ради одного дерева запиливать его(фреймворк) моветон. Дерево не для элементов html-страницы, а для отображения фигулины из БД
6 дек 18, 06:21    [21755251]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
alex55555
Korcar
Товарищи, вопрос: можно ли / безопасно ли в jsp инклудить рекурсивно? Надо обход дерева сделать с вывод на страницу в виде списка ...

Теоретически можно. Практически - контейнер может фортель выкинуть. Ну и рекурсию тупо забывают остановить некоторые.

какой контейнер и какой фортель (хотя бы приблизительно)?
6 дек 18, 06:21    [21755252]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar
WebPrj
Korcar,
JSP это грубо HTML т. е. VIEW.
Есть конечно дерево HTML, но построение модели дерева и рекурсию делают в оперативке.
Прочти про MVC.

это че, принцип построения фреймворка? в моем проекте фреймворки не используются. ради одного дерева запиливать его(фреймворк) моветон. Дерево не для элементов html-страницы, а для отображения фигулины из БД

Весь текст посвящен твоему предположению.
Оно неверно, т.к. я не о фреймворке.
Я обхожу ноды дерева в коде, а не в include.
И делаю класс tree из базы.
6 дек 18, 06:58    [21755264]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar
WebPrj
Korcar,
JSP это грубо HTML т. е. VIEW.
Есть конечно дерево HTML, но построение модели дерева и рекурсию делают в оперативке.
Прочти про MVC.

это че, принцип построения фреймворка? в моем проекте фреймворки не используются. ради одного дерева запиливать его(фреймворк) моветон. Дерево не для элементов html-страницы, а для отображения фигулины из БД
посредством HTML?
html treeview example
https://www.google.ru/search?q=html treeview example&newwindow=1&client=tablet-android-huawei&prmd=ivn&source=lnms&tbm=isch&sa=X&ved=2ahUKEwix5dGlqIrfAhUzh6YKHT0oBDQQ_AUoAXoECBAQAQ&biw=601&bih=962
Т.к.еще и в js бывает делают.
6 дек 18, 07:01    [21755269]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
WebPrj
Korcar
пропущено...

это че, принцип построения фреймворка? в моем проекте фреймворки не используются. ради одного дерева запиливать его(фреймворк) моветон. Дерево не для элементов html-страницы, а для отображения фигулины из БД

Весь текст посвящен твоему предположению.
Оно неверно, т.к. я не о фреймворке.
Я обхожу ноды дерева в коде, а не в include.
И делаю класс tree из базы.

не суди строго. наверное, я тебя не понял)

то есть ты предлагаешь положить данные в коллекцию tree в классе, а потом эту коллекцию вывести на страницы? то есть придется два раза пробежаться по всей структуре дерева: сначала положить в коллекцию, а потом вывести? Правильно тебя понял?
6 дек 18, 07:36    [21755284]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14826
Korcar
то есть ты предлагаешь положить данные в коллекцию tree в классе, а потом эту коллекцию вывести на страницы? то есть придется два раза пробежаться по всей структуре дерева: сначала положить в коллекцию, а потом вывести?
ну в общем-то всё что делается не руками- так делается...
я строю дерево в хранимке с помощью рекурсии, потом по полученным данным строю html строку в цикле чтения и результсета. Вместо формирования строки можно сразу выводить в out.write.
6 дек 18, 07:47    [21755289]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
вадя
Korcar
то есть ты предлагаешь положить данные в коллекцию tree в классе, а потом эту коллекцию вывести на страницы? то есть придется два раза пробежаться по всей структуре дерева: сначала положить в коллекцию, а потом вывести?
ну в общем-то всё что делается не руками- так делается...
я строю дерево в хранимке с помощью рекурсии, потом по полученным данным строю html строку в цикле чтения и результсета. Вместо формирования строки можно сразу выводить в out.write.

html строка - в данном случае, это уже итоговый html со всеми тэгами, и готовый к вставке на веб-страницы?

тут возникает вопрос: хранимка данные в какой форме возвращает?
6 дек 18, 07:52    [21755290]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
Сделал рекурсивный инклуд. Вроде всё заробало без проблем и сразу, но тема еще не закрыта. Интересно было бы более детально обсудить плюсы и минусы различных способов решения подобных микрозадач
6 дек 18, 08:00    [21755295]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar,
Да хоть три раза.
Данные берем из базы это один.
Бизнес логика жто 2.
Показ это 3.
MVC в школе проходят.
6 дек 18, 08:14    [21755302]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar
Сделал рекурсивный инклуд
код где? Тема ведь про это.
6 дек 18, 08:17    [21755303]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14826
Korcar
html строка - в данном случае, это уже итоговый html со всеми тэгами, и готовый к вставке на веб-страницы?
да , так называемый серверный рендеринг.
в конкретном случае она выводится при отправке страницы при помощи out.print.
Korcar
тут возникает вопрос: хранимка данные в какой форме возвращает?
в формате удобном для однопроходного построения дерева.
просто по-строчно проходим по резульсету и строим .
6 дек 18, 08:27    [21755306]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14826
WebPrj
Да хоть три раза.
можно и N наворотить, да вот только потом бороться с тормозами и шуметь про масштабирование...
зачем всё это ? если можно просто сформировать грамотно данные и просто их преобразовать для вывода?
6 дек 18, 08:50    [21755313]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
вадя,
Можно и коннект в jsp запихнуть. Топик про это? Про дураков?
6 дек 18, 08:57    [21755317]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
WebPrj
Korcar,
Да хоть три раза.
Данные берем из базы это один.
Бизнес логика жто 2.
Показ это 3.
MVC в школе проходят.

мы в школе проходили только фортран, таблицы и схемы истинности и MS Word/Excel. Даже интернета не было. Тяжелое неайтишное детство, что поделать)
6 дек 18, 09:15    [21755326]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14826
WebPrj
Можно и коннект в jsp запихнуть. Топик про это? Про дураков?
кто как понимает :)
6 дек 18, 09:19    [21755332]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar,
Вы сказали вопрос решен.
Если не показали как, то можно думать весь топик фейк на поговорить.
Ничего личного.
6 дек 18, 09:41    [21755348]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
WebPrj
Korcar
Сделал рекурсивный инклуд
код где? Тема ведь про это.

viewGroup сам себя вызывает, если переданный пункт что-то содержит еще. подключение к базе и обработку ошибок опустил
if (isGroup) {%>
<li><%= rs.getString("ima") %>
<ol ord="<%= rs.getInt("ord") %>" idsh="<%= rs.getInt("id") %>" class="hrd">
   <jsp:include page="viewGroup.jsp" flush="true"><jsp:param name="idsh" value='<%= rs.getInt("id")' /></jsp:include>
</li></ol>
<%}
else {%>
<li ord="<%= rs.getInt("ord") %>"><%= rs.getString("ima") %></li>
<%}
6 дек 18, 09:42    [21755353]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
WebPrj
Korcar,
Вы сказали вопрос решен.
Если не показали как, то можно думать весь топик фейк на поговорить.
Ничего личного.

спокуха. код привел за ручку. только не знаю как показать, что этот код находится как раз в той jspхе, что в нем вызывается (но это точно она, не стал же я бы себя обманывать)


кстати, попутный вопрос. данные же из БД берутся, то есть в каждой jspхе viewGroup.jsp прописывается подключение к БД. в рекурсии на первом контуре коннекшн к БД не закрывается, пока не выполнится вся рекурсия, а тем временем там открываются новые и новые соединения для вывода вложенных групп и подгрупп. Хотя по идее должен быть один и тот же коннекшн, но не уверен.
За сим вопрос: вот в этом плане не возникнет проблем с количеством открытых соединений?
6 дек 18, 09:46    [21755358]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar,
Другое дело. ОК.
6 дек 18, 09:47    [21755360]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
Korcar
Member

Откуда:
Сообщений: 7486
вадя
Korcar
html строка - в данном случае, это уже итоговый html со всеми тэгами, и готовый к вставке на веб-страницы?
да , так называемый серверный рендеринг.
в конкретном случае она выводится при отправке страницы при помощи out.print.
Korcar
тут возникает вопрос: хранимка данные в какой форме возвращает?
в формате удобном для однопроходного построения дерева.
просто по-строчно проходим по резульсету и строим .

строим что? таблицу или строку, которую надо будет еще распарсить? на выходе какой объект?
6 дек 18, 09:48    [21755361]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
WebPrj
Member

Откуда:
Сообщений: 320
Korcar, по коннектам что гадать. Открой бд и скажи сколько там.
Когда будет тысяча, тогда и оптимизируешь.
6 дек 18, 09:51    [21755365]     Ответить | Цитировать Сообщить модератору
 Re: include рекурсия  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14826
Korcar
вадя
пропущено...
да , так называемый серверный рендеринг.
в конкретном случае она выводится при отправке страницы при помощи out.print.
пропущено...
в формате удобном для однопроходного построения дерева.
просто по-строчно проходим по резульсету и строим .

строим что? таблицу или строку, которую надо будет еще распарсить? на выходе какой объект?

строим html строку. твой вариант так же правильный.
ничего парсить не надо,
про коннекты к базе, либо закрывать сразу послеобращения, либо следить ,чтоб не было зависших, либо использовать пуллл..
6 дек 18, 10:35    [21755455]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Java Ответить