Сервлет
Матеріал з Вікіпедії — вільної енциклопедії.
Сéрвлет — Ява компонента, керована сервлет-контейнером, яка застосовується для динамічного генерування даних. Кожен сервлет, як і більшість інших Ява-компонент, описується в окремому класі, який реалізує інтерфейс Servlet.
Сервлети завантажуються і виконуються в Web-серверах які підтримують роботу з сервлетами. Взаємодія сервлетів з клієнтами реалізована згідно із парадигмою запит-відповідь.
Зміст |
[ред.] Стандарти та специфікації
Сервлети, інтерфейси та базові класи, протоколи роботи з ними, робоче оточення, описуються у відповідних специфікаціях компанії Сан.
Для полегшення розробки HTTP сервлетів, в специфікації описано абстрактний клас HttpServlet, від якого розробникам пропонується успадковувати свої сервлети.
[ред.] Схема роботи та застосування
- Клієнт (наприклад, Веб-оглядач), відвідує веб-сторінку та надсилає HTTP запит на сервер.
- Web-сервер отримує запит та передає його контейнеру сервлетів. Контейнер сервлетів може виконуватись в тому ж самому процесі, що і веб-сервер, в окремому процесі на тій же системі, що і веб-сервер, або взагалі в окремому процесі на іншій системі.
- Контейнер сервлетів з'ясовує який сервлет слід викликати, виходячи із інформації про конфігурацію утримуваних сервлетів, та викликає його передаючи в якості параметрів об'єктні представлення запиту та відповіді.
- Сервлет використовує об'єкт запиту для отримання інформації про віддаленого користувача, параметри HTTP запиту, тощо. Сервлет виконує запрограмовані в ньому дії та надсилає результати роботи через об'єкт відповіді.
- Після того, як сервлет припиняє обробку запиту, контейнер сервлетів перевіряє коректність відправки відповіді, та повертає управління до головного веб-сервера.
Сервлети, також, використовуються в технології JSP. Шаблони сторінок транслюються в вихідні тексти Ява-класів успадкованих від стандартних класів сервлетів. Ява-компілятор компілює ці вихідні тексти в ява-байт коди. Отримані зкомпільовані класи можуть використовуватись в сервлет-контейнері. Як правило, сервлет-контейнери виконують всі ці допоміжні дії автоматично.
[ред.] Джерела інформації
- Java™ Servlet Specification, Version 2.4 [1].
[ред.] Дивіться також
- Сервлет контейнер
- JSP
- Hyper Text Transfer Protocol
- Uniform Resource Identifiers
- Uniform Resource Locators
- MIME
- CGI
[ред.] Зовнішні посилання
- Java Servlet Technology Сторінка присвячена сервлетам на сайті Сан.
- Java 2 Platform Enterprise Edition Сторінка присвячена серверним застосуванням Ява на сайті Сан.