Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для 1984nef
2 / 2 / 3
Регистрация: 21.10.2015
Сообщений: 16

Hibernate OneToMany очень долгая загрузка

25.10.2015, 23:09. Показов 1237. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер.
Есть две сущности - Client и Receipt. У одного клиента может быть много Receipt, у многих Receipt - один Client. В классах объявил связь OneToMany. В таблицах всего около 1500 записей в каждой.

Client:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public final class Client {
    ...
    private Set<Receipt> receiptList = new HashSet<Receipt>(0);
    ...
    @OneToMany(fetch = FetchType.LAZY, mappedBy = "client")
    public Set<Receipt> getReceiptList() {
    return receiptList;
    }
 
    public void setReceiptList(Set<Receipt> receiptList) {
    this.receiptList = receiptList;
    }
}
Receipt:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public final class Receipt {
    ...
    private Client client;
    ...
    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "CLIENTID", columnDefinition = "T_BINT", nullable = false)
    public Client getClient() {
    return client;
    }
 
    public void setClient(Client client) {
    this.client = client;
    }
}
При выполнении запроса к таблице Client
Java
1
Query query = session.createQuery("from Client");
время выполнения составляет всего 1-2 секунды и список Receipt грузится только при обращении к методу getReceiptList().
А при выполнении аналогичного запроса к таблице Receipt, в консоль валится куча запросов к таблице Client, и время загрузки составляет более 110 секунд. Такое ощущение что для каждой записи делается select к таблице Client. Возможно ошибка где то в аннотациях? Как сократить время загрузки?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.10.2015, 23:09
Ответы с готовыми решениями:

Принудительная загрузка lazy Object в Hibernate
Как принудительно к примеру загрузить соллекцию элементов объявленную как lazy Если таких коллекций 20 штук, то не передёргивать же...

Очень долгая загрузка установщика w7
Доброго времени суток, уважаемые форумчане! Я много раз устанавливал W7 на разные компьютеры (новые, старые, мощные, офисные и т.д.) ...

Очень долгая загрузка формы
http://stools.googlecode.com/svn/trunk/bin/sTASKedit/ http://stools.googlecode.com/svn/trunk/sTASKedit/ Есть программа-редактор для...

1
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
25.10.2015, 23:26
1984nef, уберите поле Client из объекта Receipt. Практического значения от него немного, а проблемы с производительностью скорее всего из-за него.

Кстати 1-2 секунды на запрос в БД это очень очень много
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.10.2015, 23:26
Помогаю со студенческими работами здесь

Очень долгая загрузка системы
У меня ноутбук asus zenbook ux32vd, windows 8 64bit. Система стала загружаться по 5-6 минут. В журнале windows, во время загрузки...

Очень долгая загрузка страницы
Очень долго грузится страница от 5-10сек примерно, не важно, это скрипт пхп или джаваскрипт. Пробовал тестировать на простых скриптах и все...

Очень долгая загрузка Windows
Доброго времени суток, пользователь этого портала. У меня возникла большая проблема с компьютером. Когда к примеру я хочу скачать файл с...

Очень долгая загрузка ноута.
Здравствуйте! У меня ноутбук Acer Aspire 4310. На днях пыталась отключить модем юсб через безопасное извлечение, но все зависло и висело...

Очень долгая загрузка сайтов
Всем привет. Вообщем, проблема такова. Очень долго загружаются сайты(часто вообще не загружаются), но не все. Гугл и все что с ним связано...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru