The Hypertext Transfer Protocol (HTTP) is by design a stateless protocol. To build effective web
applications, it is imperative that a series of different requests from a particular client can be
associated with each other. Many strategies for session tracking have evolved over time, but all are
difficult or troublesome for the programmer to use directly.
This specification defines a simple HttpSession interface that allows a servlet container to use
any number of approaches to track a user’s session without involving the Developer in the nuances
of any one approach.