powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему не нужно синхронизировать сессию в servlet api старше 3.0
6 сообщений из 6, страница 1 из 1
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670673
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем добрый день! Почему не нужно синхронизировать сессию в servlet api старше 3.0?
...
Рейтинг: 0 / 0
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670675
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что лично вы вкладываете в понятие "синхронизации сессии"? Для меня это термин новый.
...
Рейтинг: 0 / 0
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670695
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz, наверное перепишу вопрос в таком русле:
нужно ли синхронизировать обращения к сессии такие, как чтение атрибутов и установка атрибутов?
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
public void doFilter(req, resp, chain) {
	HttpServletRequest request = (HttpServletRequest) req;
	HttpSession session = request.getSession();
	if (request.getRequestURI().contains("/signin")) {
		chain.doFilter(req, resp);
	} else {   
		synchronized(session) {
			if(session.getAttribute("login") == null) {
				((HttpServletResponse) resp).sendRedirect(request.getContextPath() + "/signin")
				return; 
			}   
			chain.doFilter(req, resp);
		}
	}
}
...
Рейтинг: 0 / 0
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670703
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TopCore,

Нет, не нужно синхронизировать. Но нужно быть предельно внимательным, потому что помимо чтения и записи значний у вас может быть логика привязання к значениям в сессии. И у этой логики может не быть атомарности.
Вот тут хороший пример:
https://www.ibm.com/developerworks/library/j-jtp09238/index.html
...
Рейтинг: 0 / 0
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670705
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятней всё равно не стало.
synchronized, что ли собрались использовать???
Так Servlet API для того и придуман, чтобы не вставлять (собственные и дурацкие) тормоза при работе с ресурсами контейнера.
...
Рейтинг: 0 / 0
Почему не нужно синхронизировать сессию в servlet api старше 3.0
    #39670758
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz, Basil A. Sidorov, спасибо вам, немного просветили.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему не нужно синхронизировать сессию в servlet api старше 3.0
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]