What is a session and why is it required?

Bozidar Dangubic

HTTP is a connectionless protocol -- meaning that after the request is served the connection between the client and the server is closed. A session allows you to overcome this limitation by storing client activities. It has many, many uses but one example could be shopping cart type application. You can use the session to track items clients have selected.

See Topic Java:API:Servlets:Cookies, Sessions, and State Management