|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
Доброго времени суток. Задача: в некотором WEB приложении имеется БД со следующей структурой таблиц и набор классов со следующей структурой Необходимо загрузить объект Dish из БД по его ID включая все объекты, которые он должен содержать, с учетом того, что БД и модель находятся на разных серверах. Вопрос: Стоит ли пытаться загрузить все одним запросом или стоит как-то разбить загрузку на несколько подзапросов? Если стоит разбить на несколько подзапросов, то по какому принципу проводить разбиение? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2020, 14:30 |
|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
Bakuard Стоит ли пытаться загрузить все одним запросом или Если возле то бегом загружай объект и говори что не получилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2020, 14:46 |
|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Если возле то бегом загружай объект и говори что не получилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2020, 14:50 |
|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Bakuard Стоит ли пытаться загрузить все одним запросом или Если возле то бегом загружай объект и говори что не получилось. Я попытался написать один запрос загружающий объект и все его зависимости, но не смог его дописать. Тогда я попытался загружать по отдельности каждый объект входящий в Dish. Получилось, но долго. Вопрос не в том как мне реализовать решение задачи. Вопрос - какими принципами нужно руководствоваться решая эту и подобные задачи. Например: стоит ли всегда стремиться за один запрос загружать интересующий нас объект и все связанные с ним объекты? Если да - то почему? Если нет - то опять же, почему? P.s. почему-то вместо картинки с диаграммой ERD опять загрузилась картинка с диаграммой классов. Не понимаю, как работает загрузка картинок на этом форуме. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2020, 16:32 |
|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
Bakuard Получилось, но долго. ТС работает больше отвечающих. Поставь все свойства ленивые у объекта и загрузи его. Код сюда. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2020, 16:57 |
|
Подход для загрузки сложного графа объектов из БД
|
|||
---|---|---|---|
#18+
Bakuard, Если не хотите "думать", то просто используете Hibernate с включенным кэшем. Можно и Spring Data Jpa, но всё равно там внутри Hibernate. Сложность будет только в правильном описании сущностей, точнее связи между ними. Когда и что грузить, сразу, или по требованию. Всю черновую работу возьмет Hibernate, вам только надо будет декларативно в аннотации указать, что вы хотите. Если трудности не страшат, то пишите запросы вручную. Оптимизируйте их. А потом напишите код, для преобразования ResultSet в вашу модель данных. Что и как делать, ответите можете только вы, в зависимости от задачи. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2020, 07:10 |
|
|
start [/forum/topic.php?fid=59&fpage=11&tid=2120644]: |
0ms |
get settings: |
7ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
24ms |
get topic data: |
5ms |
get forum data: |
1ms |
get page messages: |
138ms |
get tp. blocked users: |
1ms |
others: | 7ms |
total: | 190ms |
0 / 0 |