Пакети сервлетів включають два абстрактних класу, які реалізують інтерфейс Servlet. клас GenericServlet (з пакета javax.servlet) і клас HttpServlet (з пакета javax.servlet.http). Ці класи надають реалізацію за замовчуванням для всіх методів інтерфейсу Servlet. Більшість розробників використовують або клас GenericServlet. або клас HttpServlet. і заміщають деякі або всі методи.
Сервлети, що працюють з клієнтами через Web, зазвичай розширюють клас HttpServlet. Метод service. як правило, переопределяется, щоб мати можливість розрізняти стандартні методи запитів, одержувані від Web-браузера клієнта. Двома найбільш поширеними типами запитів HTTP (їх також називають методами запитів) є get і post. Запит get отримує (або витягує) інформацію. Запит post поміщає (або відправляє) дані на сервер. Типове застосування методу post - відправка на сервер інформації для аутентифікації, або даних з форми, в яку користувач ввів інформацію.
У класі HttpServlet визначені методи doGet і doPost для реакції на запити типу get і post клієнта. Ці методи викликаються методом service класу HttpServlet. який, в свою чергу, викликається при надходженні запиту на сервер. Метод service спочатку визначає тип запиту, а потім викликає відповідний метод. Є й інші, менш уживані типи запитів, але в даній статті вони не розглядаються.
Методи doGet і doPost приймають в якості параметрів об'єкти HttpServletRequest і HttpServletResponse. які дають можливість здійснювати взаємодію між клієнтом і сервером. Методи інтерфейсу HttpServletRequest полегшують доступ до даних запиту. Методи інтерфейсу HttpServletResponse полегшують повернення результатів Web-клієнта у вигляді HTML.
інтерфейс HttpServletRequest
При кожному виклику методи doGet і doPost класу HttpServlet приймають в якості параметра об'єкт, який реалізує інтерфейс HttpServletRequest. Web-сервер, який виконує сервлет, створює об'єкт HttpServletRequest і передає його методу service сервлета (який в свою чергу передає його методу doGet або doPost). Даний об'єкт містить запит, що надійшов від клієнта.
Є безліч методів, що дають можливість сервлету обробляти клієнтський запит. Деякі з цих методів належать інтерфейсу ServletRequest - інтерфейсу, який розширюється інтерфейсом HttpServletRequest. Ряд ключових методів, використаних в прикладах, представлені в таблиці. Повний список методів інтерфейсу HttpServletRequest можна знайти в документації компанії Sun.