Я считаю, что идея сеанса на запрос заключается больше в том, когда вы открываете и закрываете сеанс, а не в повышении производительности.
Идея в том, что
- Открытие сеанса запустит транзакцию еще до того, как ваш код будет вызван
- Ваша бизнес-логика и ваша структура имеет полный доступ к базе данных до последнего возможного момента
- Ваша транзакция совершена для вас, вместо того, чтобы делать это каждый раз самостоятельно
Идея № 2 важна для того, чтобы вы могли смешивать веб-фреймворки и ленивую загрузку данных; если метод визуализации вызывается во время рендеринга ваших данных после выполнения кода, и вы закрыли сеанс, вы не сможете лениво загрузить результат этого геттера.