Servlets (Básico)

Los servlets HTTP normalmente pueden servir a m�ltiples clientes concurrentemente. Si los m�todos de nuestro servlet trabajan con clientes que acceden a recursos compartidos, podemos manejar la concurrencia creando un servlet que maneje s�lo una petici�n de cliente a la vez. (Tambi�n se puede sincronizar el acceso a los recursos, un punto que se cubre en al secci�n Threads de Control de este tutorial).

Para hacer que el servlet maneje s�lo un cliente a la vez, tiene que implementar el interface SingleThreadModel adem�s de extender la clase HttpServlet.

Implementar el interface SingleThreadModel no implica escribir ning�n m�todo extra. S�lo se declara que el servlet implementa el interface, y el servidor se asegura de que nuestro servlet s�lo ejecute un m�todo service cada vez.

Por ejemplo, el ReceiptServlet acepta un nombre de usuario y un n�mero de tarjeta de credito, y le agradece al usuario su pedido. Si este servlet actualizara realmente una base de datos, por ejemplo, una que siga la pista del inventario, entonces la conexi�n con la base de datos podr�a ser un recurso compartido. El servlet podr�a sincronizar el acceso a ese recurso, o implementar el interface SingleThreadModel. Si el servlet implementa este interface, el �nico cambio en el c�digo de la p�gina anterior es la l�nea mostrada en negrita.

    public class ReceiptServlet extends HttpServlet
                                implements SingleThreadModel {

        public void doPost(HttpServletRequest request,
                           HttpServletResponse response)
	    throws ServletException, IOException {
                ...
        }
        ...
    }

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP