Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Struts 2 + Hibernate: lazy-коллекции


Автор: MaxPayneC 5.11.2009, 19:45
Прошу прощения, если эта тема уже обсуждалась - не нашел(
Итак, ситуация. Есть веб-приложение, написанное с использованием Struts 2 и лазающее в базу данных через Hibernate.

Вопрос первый: какой адекватный паттерн работы с сессиями Hibernate следует использовать?

Вопрос второй: Как правильно использовать паттерн session-per-request? Коллекции, загружаемые хибернейтом лениво, должны быть доступны в jsp, а значит сессия должна быть еще открыта в jsp. Работа с сессиями организована так: все экшн-классы наследуют от класса, у которого есть поле session, и геттер и сеттер к нему. Каждый экшн-класс в начале выполнения метода execute() выполняеть SessionFactory.openSession() и кладет эту сессию в вышеупомянутую переменную. По окончанию работы с коллекциями, в файле, который включается во все jsp, написано что-то вроде <s:if test="session.close()"></s:if>. Очень криво написано, но работает. Буду признателен, если подскажете адекватную реализацию этого паттерна.

Автор: AntonSaburov 5.11.2009, 19:49
Можно посмотреть здесь - части с 14 по 19. http://www.java-course.ru/students/part14.html

Struts можно привернуть уже сверху бизнес-уровня.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)