A: User clicks a link that has a URL to a servlet.
B: The Container "sees" that the request is for a servlet, so the container creates two objects:
1) HttpServletsResponse
2) HttpServletRequest
C: The Container finds the correct servlet based on the URL in the request, creates or allocates a thread for that request, and calls the servlet`s service() method, passing the request and response objects as arguments.
D: The service() method figures out which servlet method to call based on the HTTP Method(GET,POST,etc) sent by the client.
E: The servlet uses the response object to write out the response to the client . The client sent an HTTP GET request ,so the service() method calls the servlet`s doGet() method,passing the request and response objects as arguments.
F: The servlet uses the response object to write out the response to the client. The response goes back through the Container.
G: The service() method completes ,so the thread either dies or returns to a Container-managed thread pool. the request and response object references fall out of scope, so these objects are toast. The client gets the response.