Учебники

Сервлеты — Обзор

Java-сервлеты — это программы, которые работают на веб-сервере или сервере приложений и действуют как промежуточный уровень между запросами, поступающими из веб-браузера или другого HTTP-клиента, и базами данных или приложениями на HTTP-сервере.

Используя сервлеты, вы можете собирать данные от пользователей через формы веб-страниц, представлять записи из базы данных или другого источника и динамически создавать веб-страницы.

Сервлеты Java часто служат той же цели, что и программы, реализованные с использованием Common Gateway Interface (CGI). Но сервлеты предлагают несколько преимуществ по сравнению с CGI.

  • Производительность значительно лучше.

  • Сервлеты выполняются в адресном пространстве веб-сервера. Нет необходимости создавать отдельный процесс для обработки каждого запроса клиента.

  • Сервлеты не зависят от платформы, потому что они написаны на Java.

  • Диспетчер безопасности Java на сервере налагает ряд ограничений для защиты ресурсов на компьютере сервера. Так что сервлетам доверяют.

  • Полная функциональность библиотек классов Java доступна сервлету. Он может связываться с апплетами, базами данных или другим программным обеспечением через сокеты и механизмы RMI, которые вы уже видели.

Производительность значительно лучше.

Сервлеты выполняются в адресном пространстве веб-сервера. Нет необходимости создавать отдельный процесс для обработки каждого запроса клиента.

Сервлеты не зависят от платформы, потому что они написаны на Java.

Диспетчер безопасности Java на сервере налагает ряд ограничений для защиты ресурсов на компьютере сервера. Так что сервлетам доверяют.

Полная функциональность библиотек классов Java доступна сервлету. Он может связываться с апплетами, базами данных или другим программным обеспечением через сокеты и механизмы RMI, которые вы уже видели.

Сервлеты Архитектура

На следующей диаграмме показано расположение сервлетов в веб-приложении.

Сервлеты Архитектура

Задачи сервлетов

Сервлеты выполняют следующие основные задачи —

  • Прочитайте явные данные, отправленные клиентами (браузерами). Это включает в себя HTML-форму на веб-странице или она также может быть получена из апплета или пользовательской клиентской программы HTTP.

  • Прочитать неявные данные HTTP-запроса, отправленные клиентами (браузерами). Сюда входят файлы cookie, типы мультимедиа и схемы сжатия, понятные браузеру, и так далее.

  • Обработайте данные и сгенерируйте результаты. Этот процесс может потребовать обращения к базе данных, выполнения вызова RMI или CORBA, вызова веб-службы или непосредственного вычисления ответа.

  • Отправьте явные данные (т. Е. Документ) клиентам (браузерам). Этот документ может быть отправлен в различных форматах, включая текст (HTML или XML), двоичный файл (изображения GIF), Excel и т. Д.

  • Отправьте неявный HTTP-ответ клиентам (браузерам). Это включает в себя информирование браузеров или других клиентов о типе возвращаемого документа (например, HTML), настройку файлов cookie и параметров кэширования и другие подобные задачи.

Прочитайте явные данные, отправленные клиентами (браузерами). Это включает в себя HTML-форму на веб-странице или она также может быть получена из апплета или пользовательской клиентской программы HTTP.

Прочитать неявные данные HTTP-запроса, отправленные клиентами (браузерами). Сюда входят файлы cookie, типы мультимедиа и схемы сжатия, понятные браузеру, и так далее.

Обработайте данные и сгенерируйте результаты. Этот процесс может потребовать обращения к базе данных, выполнения вызова RMI или CORBA, вызова веб-службы или непосредственного вычисления ответа.

Отправьте явные данные (т. Е. Документ) клиентам (браузерам). Этот документ может быть отправлен в различных форматах, включая текст (HTML или XML), двоичный файл (изображения GIF), Excel и т. Д.

Отправьте неявный HTTP-ответ клиентам (браузерам). Это включает в себя информирование браузеров или других клиентов о типе возвращаемого документа (например, HTML), настройку файлов cookie и параметров кэширования и другие подобные задачи.

Пакеты сервлетов

Сервлеты Java — это классы Java, запускаемые веб-сервером, который имеет интерпретатор, поддерживающий спецификацию Java Servlet.

Сервлеты могут быть созданы с помощью пакетов javax.servlet и javax.servlet.http , которые являются стандартной частью корпоративной версии Java, расширенной версии библиотеки классов Java, которая поддерживает крупномасштабные проекты разработки.

Эти классы реализуют спецификации Java Servlet и JSP. На момент написания этого руководства использовались версии Java Servlet 2.5 и JSP 2.1.

Java-сервлеты были созданы и скомпилированы, как и любой другой класс Java. После установки пакетов сервлетов и добавления их в Classpath вашего компьютера вы можете скомпилировать сервлеты с помощью компилятора Java JDK или любого другого текущего компилятора.

Что дальше?

Я хотел бы шаг за шагом настроить вашу среду, чтобы начать с сервлетов. Так что пристегните ремень для приятного вождения с сервлетами. Я уверен, что вам очень понравится этот урок.