powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько теоретических вопросов о HttpSession?
4 сообщений из 4, страница 1 из 1
Несколько теоретических вопросов о HttpSession?
    #38972870
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,
создаю небольшое приложение с авторизацией, и что-то мне перемешалось все...

В большинстве примеров показано следующее
Код: java
1.
2.
3.
    HttpSession session = req.getSession(true);
httpSession.setAttribute("username", username);
.....



Как мне организовать следующее, теоретически:

1. Человек находится на стартовой странице сайта - ему соответственно никакая сессия не нужна.
2. Вводит логин и пароль, на сервере припустим фильтр какой-то проверяет и обратно шлет в http-header JSESSIONID которое генерирует HttpSession.
3. Пользователь успешно залогинился, теперь при каждом запросе он в своем http-header шлет JSESSIONID, я соответственно сверяю сессию (есть ли она в HttpSession). - Все верно?
4. Выхожу с аккаунта - просто ставлю сессию в setInvalidate.

Теперь непонятные мне действия.

- Как HttpSession распознает пользователей? При первом запросе говорит что сессия новая, при всех последующих JSESSIONID в сессии тот же, но значение isNew=false.

- не понимаю как сравнивать сессии? Просто сравнивать строчки JSESSIONID?

-зачем все вставляют дополнительный атрибут httpSession.setAttribute("username", username); ? Как оно связывается между собой?

Вопросы возможно глупые, но буду благодарен за ответы.
...
Рейтинг: 0 / 0
Несколько теоретических вопросов о HttpSession?
    #38972972
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_webdev_- Как HttpSession распознает пользователей?

Этот класс никак не связан с пользователями и никак их не распознаёт. Браузер хранит jsessionid в куках или параметрах запроса. Сервер по jsessionid трекает сессию на сервере.

_webdev_При первом запросе говорит что сессия новая, при всех последующих JSESSIONID в сессии тот же, но значение isNew=false.

Набор слов какой-то. isNew это аргумент метода. Это, возможно, ключ к вашему первому вопросу. Если вызывать сессию с параметром false, то она не будет создана на сервере, если её ещё нет. В JavaDoc имеется более точная формулировка.

_webdev_- не понимаю как сравнивать сессии? Просто сравнивать строчки JSESSIONID?

Зачем их сравнивать? Они, обычно, никак не взаимодействуют.

_webdev_-зачем все вставляют дополнительный атрибут httpSession.setAttribute("username", username); ? Как оно связывается между собой?

Почему этот атриубут вдруг дополнительный? Просто когда влом использовать JEE для аутентификации и авторизации, пишут всё ручками в сессию.

_webdev_Вопросы возможно глупые, но буду благодарен за ответы.
Да. Над формулировкой надо поработать. Потому что по вашим словам HttpSession это прям магия какая-то. А это просто Key Value Map для того чтобы на сервере хранить значения связанные с клиентской сессией.
...
Рейтинг: 0 / 0
Несколько теоретических вопросов о HttpSession?
    #38972980
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz_webdev_-зачем все вставляют дополнительный атрибут httpSession.setAttribute("username", username); ? Как оно связывается между собой?

Почему этот атриубут вдруг дополнительный? Просто когда влом использовать JEE для аутентификации и авторизации, пишут всё ручками в сессию.
ну, он имел ввиду, что это дает... а дает это то, что из любой точки приложения можно получить username из объекта сессии
...
Рейтинг: 0 / 0
Несколько теоретических вопросов о HttpSession?
    #38973641
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HTTP-сессия существует даже тогда, когда нет имени пользователя.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько теоретических вопросов о HttpSession?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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