Servlet Overview

Jakob Jenkov
Last update: 2020-01-27

In this text I will try to give you an overview of Java servlets.

What is a Servlet?

A Java Servlet is a Java object that responds to HTTP requests. It runs inside a Servlet container. Here is an illustration of that:

Servlets inside a Java Servlet Container
Servlets inside a Java Servlet Container

A Servlet is part of a Java web application. A Servlet container may run multiple web applications at the same time, each having multiple servlets running inside. Here is an llustration of that:

Web applications with multiple servlets inside a Java Servlet container
Web applications with multiple servlets inside a Java Servlet container

A Java web application can contain other components than servlets. It can also contain Java Server Pages (JSP), Java Server Faces (JSF) and Web Services. This tutorial is about Java Servlets only, though.

HTTP Request and Response

The browser sends an HTTP request to the Java web server. The web server checks if the request is for a servlet. If it is, the servlet container is passed the request. The servlet container will then find out which servlet the request is for, and activate that servlet. The servlet is activated by calling the Servlet.service() method.

Once the servlet has been activated via the service() method, the servlet processes the request, and generates a response. The response is then sent back to the browser.

Servlet Containers

Java servlet containers are usually running inside a Java web server. A few common well known, free Java web servers are:

Jakob Jenkov

Featured Videos


Java Persistence
Close TOC

All Trails

Trail TOC

Page TOC