У меня есть проект, на котором есть страница панели инструментов.на этой странице панели инструментов я должен показать:
- Статистические диаграммы
- Новая информация
- Новые предложения пользователей для администратора
- Количество новыхсообщения
- ETC
Теперь каждая из приведенных выше сведений относится к разным таблицам в моей базе данных.
Я создал разные сущности и использую спящий режим.Предположим, что client-A открывает его панель инструментов, я должен выполнить несколько запросов для сбора всей информации от всех этих объектов.Вот проблемы:
- Поскольку каждый запрос внутри моей программы выполняется в одном потоке за раз, каждый запрос должен быть завершен для выполнения другого запроса (это не одновременно)
- В hibernate
- мы не можем создавать несколько запросов одновременно и отображать их на разные сущности. Аннотация @Formula не может сопоставлять целую сущность и просто отображать один тип данных
.Подход к эффективному и быстрому выводу состоит в том, чтобы создать один запрос Big Native и получить все данные сразу с помощью одного запроса НО , если я собираюсь сделать это, мне нужно написать собственный запрос и отобразить все с помощьюя сам, что делает подошву использования hibernate слабым.
Другой подход, который я думаю, заключается в использовании executor service и многопоточности в моем приложении
Теперь мой вопросявляется ли наилучшим подходом, который я все еще могу использовать для отображения гибернации и создания высокопроизводительных запросов?
Заранее спасибо