![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Swiftcode |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 23.6.2013 Репутация: нет Всего: нет |
Всем доброго времени!
Требуется "раскрутить" дерево средствами Java, как это умеет Oracle конструкцией connect by prior Таблица g_org: -------------------------------- ID | PARENT_ID | NAME -------------------------------- 1 null АО "Тапочки" 2 1 Бухгалтерия 3 1 Отдел "А" 4 3 Отдел "А", сектор 1 5 3 Отдел "А", сектор 2 6 4 Сотрудники отдела "А", сектора 1 7 2 Сотрудники Бухгалтерии
то есть, начинаем с корня, где ParentId = null и далее... В итоге имеем иерархию: АО "Тапочки" |----Бухгалтерия | |----Сотрудники Бухгалтерии ... Нужно сделать так же, но только с запросом
т.е. вывести List со вложенными элементами по иерархии по этому запросу, где начало иерархии ParentId = null, уровней вложенности может быть много Какие есть изящные решения? Это сообщение отредактировал(а) Swiftcode - 15.6.2015, 08:12 |
||||
|
|||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 8 Всего: 118 |
А что значит "раскрутить" ? Дерево построить ?
|
|||
|
||||
| Swiftcode |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 23.6.2013 Репутация: нет Всего: нет |
Именно так, построить |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 8 Всего: 118 |
Я бы наверно сначала сгруппировал в виде Map списки по родительскому ID - Map<Integer, List<Item>>. А потом уже на основе этой информации сформировал бы дерево. Это общий подход конечно же - подробности я не обдумывал.
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |