РЕЦЕНЗИИ
Холл Марти. Сервлеты и Java Server Pages. СПб.: Питер, 2001. - 496 с., ил.
Технологии JSP и Java-сервлетов вошли в число признанных стандартов разработки серверных сценариев для Web-серверов. С их помощью можно быстро создавать и развертывать Интернет-приложения для различных платформ (Unix, Linux, Windows и т. д.).
Первая часть книги посвящена разработке сервлетов в соответствии со спецификацией 2.1/2.2. Сервлеты (Web-серверный Java-код, используемый для динамического формирования HTML-страниц) имеют ряд несомненных преимуществ перед стандартными CGI-модулями. Они не зависят от платформы, не требуют формирования нового процесса для обработки каждого клиентского запроса, обладают более простой интерфейсной частью и более гибкими прикладными возможностями. Для подготовки сервлетов достаточно знания Java.
Технология JSP напоминает технологию Microsoft ASP (Active Server Pages), но ее отличает независимость от платформы (JSP-интерпретатор доступен для самых разных ОС, не только для Windows). При желании JSP-страницы можно преобразовывать в сервлеты. Надо отметить, что JSP-страницы - это не сценарии JavaScript, а встраиваемый в Web-страницы обычный Java-код, интерпретируемый сервером “на лету”.
Из первой главы читатель узнает, как установить части Web-сервера, поддерживающие сервлеты и JSP-страницы. Вторая глава посвящена базовым принципам создания сервлетов, их структуре и способам отладки. Листинги разумного объема сопровождены подробными комментариями. В третьей главе рассказывается о способах обработки данных, поступающих из форм браузеров.
О том, как сервлеты обрабатывают HTTP-запросы, говорится в четвертой главе. На примере конкретного сервлета поясняется, как сжимать Web-страницы в соответствии с алгоритмом gzip, значительно ускоряя их передачу по сети, а также как разграничивать доступ к Web-страницам с помощью пароля. Спецификация CGI имеет такие удобные свойства, как переменные CGI, благодаря которым можно быстро получить самую разную информацию о поступившем HTTP-запросе. Способам работы с аналогами таких переменных в сервлетах посвящена пятая глава. Технологии подробной генерации HTTP-ответа от сервера описаны в шестой и седьмой главах (в частности, дан пример динамического формирования GIF-изображения в ответ на запрос браузера). Программный интерфейс Cookie API для сервлетов описан в восьмой главе. Вопросы отслеживания действий конкретного пользователя на сайте, что требуется, например, для сбора статистики или пошагового оформления заказа, раскрываются в девятой главе.
Вторая часть посвящена JSP-страницам. Небольшие примеры подробно иллюстрируют принципы создания JSP-страниц (десятая - двенадцатая главы). Далее разъясняется, как использовать компоненты Java-Beans в JSP-страницах (тринадцатая глава) и как определять собственные теги JSP, что полезно для создания тематических библиотек тегов со сложной функциональностью, допускающих повторное использование (четырнадцатая глава).
Из пятнадцатой главы читатель узнает, как совместно применять JSP-страницы и сервлеты. Возможности JSP-технологии ограничены жестко заданным внешним видом Web-страницы, и подобная комбинация объединяет простоту JSP и гибкую логику сервлетов.
В третьей части внимание уделено особенностям Web-программирования, связанным с построением сложных HTML-форм (шестнадцатая глава) и использованием аплетов на клиентской стороне для организации гибкого пользовательского интерфейса (семнадцатая глава).
В заключительной, восемнадцатой главе подробно рассмотрен интерфейс
JDBC, предназначенный для организации доступа к СУБД, и его практическое применение в сервлетах.
Эта книга, хорошая во всех отношениях, требует от читателя знания Java. Она отвечает на большую часть вопросов, связанных с построением динамических Web-сайтов на основе доступных и популярных технологий, и может использоваться в качестве практического пособия при создании Интернет-приложений.