En general una sesión puede tener los siguientes estados, abierta o cerrada. Para el uso en JSP, siempre que un usuario se conecta al servidor se crea una conexión. De manera que si deseamos administrar estas sesiones debemos hacer uso del objet session que JSP utiliza para el manejo de sesiones.
Para entender el uso de este objeto realizaremos el siguiente ejemplo:
1. Abrimos Netbeans 6.x y creamos un nuevo proyecto web, con el nombre testSession
2. Agregamos tres páginas jsp con los nombres, setAttribute.jsp, getAttribute.jsp, invalidate.jsp
3. la pagina index.jsp en el cuerpo pegamos el siguiente código:
<form method="get" target="sessionJsp" action="setAttribute.jsp">
<label>Value
<input type="text" name="value">
</label>
<input type="submit" value="setAttribute()">
</form>
<br>
<a href="getAttribute.jsp" target="sessionJsp">getAttribute</a>
<br>
<a href="invalidate.jsp" target="sessionJsp">invalidate</a>
<br>
<iframe name="sessionJsp" width="100%">
</iframe>
4. En la página setAttribute.jsp crearemos una variable en sesión. Utilizando el código acontinuación:
<%
session.setAttribute("value", request.getParameter("value"));
%>
<h3>session.setAttribute("value",<%=session.getAttribute("value")%>)</h3>
en la segunda línea de código podemos ver que inmediatamente estamos obteniendo la variable que creamos, pero para ser mas claro con el ejemplo en la página getAttribute.jsp realizaremos esta misma operación, para lo cual utilizaremos el siguiente código:
<h3>value = <%=session.getAttribute("value")%></h3>
5. para finalizar el uso de variables, vamos a eliminar todas las variables de sesión en la página invalidate.jsp, utilizaremos el siguiente código:
<%session.invalidate(); %>
<h3>session.invalidate()</h3>
Ahora para terminar podemos ejecutar la aplicación y se debe ver así:

espero que este ejemplo les ayude mucho a entender en principio el uso de las variables de sesión, si necesitan aclarar cualquier duda, por favor dejen sus comentarios