Сеансы Spring Server / Client и Hibernate - PullRequest
4 голосов
/ 21 марта 2011

Я использую Spring 3 и Hibernate 3.6 для разработки веб-приложений - я новичок и мне интересно, действительно ли я понимаю, как работают сессии.

Правильно ли, что сеансы между сервером и клиентом, идентифицируемые идентификатором сеанса, отличаются от сеансов гибернации?

Сеанс между Сервером и Клиентом всегда является HttpSession. (?) Когда он создается? Когда пользователь входит в систему или также когда анонимный пользователь запрашивает страницу (которая не защищена)?

есть ли связь между httpsession и hibernate-сессиями? Создаются ли Hibernate Sessions фабрикой сессий без связи с httpsession? Я не уверен, какой сеанс hibernate ссылается на команду, подобную этой:

this.sessionFactory.getCurrentSession().save(object);

this getCurrentSession(): как долго этот сеанс гибернации активен? за все время пользователь вошел в систему? или только для одной транзакции (которая может включать несколько операций с данными?)

Прошу прощения за этот вопрос, на который, возможно, совершенно легко ответить, но большинство документов на английском языке, и если это не так, понимание на родном языке иногда бывает трудным (главным образом потому, что слово "сессия" используется так часто)

спасибо, что помогли мне понять эту тему! : -)

1 Ответ

6 голосов
/ 21 марта 2011

Правильно ли, что сеансы между сервером и клиентом, идентифицируемые идентификатором сеанса, отличаются от сеансов гибернации?

Да, совершенно разные.

Ссылка: (javax.servlet) HttpSession, (Hibernate) Session

Сеанс между сервером и клиентомвсегда HttpSession. (?) Когда он создается?Когда пользователь входит в систему или также когда анонимный пользователь запрашивает страницу (которая не защищена)?

См. Учебное пособие по Java EE> Поддержание состояния клиента

существует ли какая-либо связь между httpsession и hibernate-сессиями?

Нет, хотя OpenSessionInViewFilter может убедиться в наличии Hibernate Session доступно для каждого HTTP-запроса (один Hibernate-сеанс на один запрос, а не на Web-сеанс).

Созданы ли сеансы Hibernate сессионным фабрикой без подключения к httpsession?1040 * Да, обычно.

Я не уверен, на какой сеанс hibernate ссылается с помощью такой команды: "this.sessionFactory.getCurrentSession (). Save (object);"

Hibernate Session

этот "getCurrentSession ()": как долго этот сеанс Hibernate активен?за все время пользователь вошел в систему?или только для одной транзакции (которая может включать несколько операций с данными?)

См. Справочник по Hibernate> Области сеанса и транзакции

...