Servlets

15th agosto 2009

Qué es un servlet?
Es una clase Java que se ejecuta en el servidor.

Qué librerías necesito importar para usar servlets?
javax.servlet.*
javax.servlet.http.*


Cuál es la diferencia(al momento de programar) entre un servlet y una página JSP
?
El servlet está formado por código Java con HTML «embebido». La página JSP es código HTML con código Java embebido.

Cómo funciona un servlet?
Al hacer el requerimiento al servidor:
1.- Se crea un objeto de tipo HttpServletRequest y otro HttpServletResponse
2.- Se carga el servlet compilado, es decir con extensión .class en la memoria asignada al servidor.
3.- Se invoca al método init() del servlet
El método init() se ejecuta UNA SOLA VEZ con el primer requerimiento, para los requerimientos posteriores no se ejecutará.

Cuáles son los métodos más importantes de un servlet?
Además del método init(), hay dos métodos muy importantes. doGet y doPost.
——————————————————————————————————–
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}

——————————————————————————————————–
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}

——————————————————————————————————–
Y uno más….
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
.
.
.

} finally {
out.close();
}
}

——————————————————————————————————–
Lo que debes saber:
doPost es el método que se ejecuta cuando el requerimiento es enviado por POST
doGet es el método que se ejecuta cuando el requerimiento es enviado por GET


Lo que debes observar:

  • Los tres métodos reciben como parámetros los objetos HttpServletResponse y HttpServletRequest.
  • Los dos métodos, doGet y doPost llaman al tercero, processRequest. Este último método se ha creado para evitar la repetición de código en los métodos doGet y doPost ya que ambos preocesarán el requerimiento de la misma manera.
  • Ir a la barra de herramientas