|
|
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Происходит построение дерева. Отношение родитель/потомок у таблицы саму на себя, то есть потомок может быть одновременно родителем. Сначала вытаскиваем всё в list. И по идее этого запроса должно хватить хиберу. Так нет ведь при рекурсивном выводе элементов дерева, он опять тянет детей (дополнительные и ненужные запросы(! Подскажите, пожалуйста, как это сделать одним запросом, без повторных обращений к базе? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2007, 15:31:34 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Попробавать кэш, получаем(если у вас таки лес, а не просто дерево) руты (запросом где парент NULL) и погнали... Согласно доке при навигации по графу объектов хибер пробует их тянуть сначала из кеша, так что запросы в БД пойдут только за отсутствующими сущностями. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2007, 16:41:36 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Спасибо за совет! Правда буду делать это впервые... Буду пробовать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2007, 16:55:08 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
сделайте "from Org" потом обойдите всё дерево вызывая к0ннить методы. и уже эту ... отдавайте клиенту ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2007, 17:00:29 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
чего то не совсем понятно... Из базы у меня тащится всё в list с помощью .createCriteria! А потом, работая с этим list, проверяя наличие детей, и происходят дополнительные обращения к базе. Можно поподробнее, пожалуйста, насчёт "from Org"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 08:32:30 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
это запрос выбирает всю таблицу. поэтому при дальнейших обращениях к проксям хибер не будет дёргать базу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 09:38:14 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
А чем отличается от этого Код: plaintext По идее тоже вся таблица тянется, или я ошибаюсь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 09:52:47 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
думаю да ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 11:01:53 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Ясно. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 11:25:17 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
на самом деле не за что, т.к. фетчить всю таблицу явный моветон ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 11:44:04 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 12:04:38 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
ну много данных обычно. хотя если объёмы позволяют, то на здоровье ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 12:11:12 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Вы имеете в виду постепенную подгрузку по необходимости конкретной ветки дерева? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 12:22:12 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
jabberВы имеете в виду постепенную подгрузку по необходимости конкретной ветки дерева?+1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 13:40:16 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
А я про подгрузку ветки дерева по нажатию на неё! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 13:56:37 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 15:05:43 |
|
||
|
Hibernate, нестандартная ситуация!?
|
|||
|---|---|---|---|
|
#18+
Спасибо. Сейчас попробую... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 15:33:13 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34910564&tid=2144127]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
301ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
3ms |
| others: | 339ms |
| total: | 767ms |

| 0 / 0 |
