Cookies
это данные, которые генерируются сервером и хранятся в браузере клиента.
Браузер клиента возвращает эти данные обратно на сервер когда клиент делает запрос из того же веб-ресурса.
Как пример, можно привести автоматический ввод логина и пароля когда пользователь заходит на страницу для входа в учетную запись, на которой он уже вводил свои логин и пароль. Думаю всем это должно быть знакомо.
Раскроем этот пример получше:
- Когда клиент вводит логин и пароль на каком-то веб-ресурсе они отправляются на сервер и там сохраняются.
- Сервер генерирует некий номер, который будет принадлежать только конкретно этому клиенту и отправляет сгенерированный номер клиенту, который сохраняется у него в браузере (в куках) и когда клиент повторно заходит на этот веб-ресурс браузер отправляет сохраненные куки с номером в них на сервер.
- Сервер проверяет этот номер и по этому номеру отправляет клиенту его логин и пароль, и клиент не должен самостоятельно их опять вводить.
Как простой пример, давайте отправим клиенту какой-нибудь куки, чтобы он сохранился у него в браузере, и клиент отправит этот куки обратно на сервер, и сервер отправит клиенту эти куки для вывода на странице у клиента.
Пример программы:
Проверка работы программы с Cookies
Скомпилируем файл сервлета и в адресной строке перейдем по адресу /cookiesservlet.

Как видим, куки клиента были успешно отправлены сервером клиенту для вывода.
Можно также увидеть кук JSESSIONID. Что это за кук разберем в следующем уроке.
Также справа можно увидеть, что отправленный кук someCookieName
храниться у клиента в браузере. Чтобы посмотреть хранящиеся куки в браузере Chrome нужно нажать на кнопку F12
.
Эти куки клиент теперь может всегда посмотреть в браузере когда заходит на страницу данного сервлета и он будет там существовать пока клиент не очистит куки браузера.