Introduccion a servlets

Solo disponible en BuenasTareas
  • Páginas : 5 (1086 palabras )
  • Descarga(s) : 0
  • Publicado : 14 de marzo de 2011
Leer documento completo
Vista previa del texto
Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos.
1.- Capa de presentación: Esta capa es la que ve el usuario, presenta el sistema al usuario, le comunica la información y captura la informacon del usuario en un minimo proceso
2.- Capa de negocio: Esta capa recibe las peticiones del usuario y se envían lasrespuestas tras el proceso. Aquí se establecen todas las reglas del negocio que deben cumplirse.
3.- Capa de datos: Es donde residen los datos y es la encargada de acceder a los mismo. Esta formada por uno o mas gestores de bases de datos que realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de negocio.
Servlets
Los servletsson clases Java que se ejecutan en un servidor de aplicación, para contestar a las
peticiones de los clientes. Los servlets no se encuentran limitados a un protocolo de comunicaciones
específico entre clientes y servidores, pero en la práctica podemos decir que se utilizan únicamente
con el protocolo HTTP, por lo que el servidor de aplicación pasa a denominarse entonces servidor
Web.
Unservlet es muy similar a un script CGI, es un programa que se ejecuta en un servidor Web actuando
como una capa intermediaría entre una petición procedente de un navegador Web y aplicaciones, bases
de datos o recursos del servidor Web.
Volvamos al objetivo principal del presente apartado, es decir, la definición de un servlet. Un servlet
también se define por los trabajos o tareas típicas querealiza, estas tareas se comentan a continuación
en el orden lógico en el que se realizan:
1. Leer los datos enviados por el usuario: normalmente estos datos se indican a través de
formularios HTML que se encuentran en páginas Web. Aunque esta información también
puede provenir de otras herramientas HTTP o bien desde applets.
2. Buscar otra información sobre la petición que se encuentra incluida enla petición HTTP: esta
información incluye detalles tales como las capacidades y características del navegador,
cookies, el nombre de la máquina del cliente, etc.
3. Generar los resultados: este proceso puede requerir acceder a una base de datos utilizando
JDBC, utilizar un componente JavaBean, o generar la respuesta de manera directa.
4. Formatear los resultados en un documento: en lamayoría de los casos implica incluir los
resultados en una página HTML.
5. Asignar los parámetros apropiados de la respuesta HTTP: esto implica indicar al navegador el
tipo de documento que se le envía (por ejemplo HTML), asignar valores a las cookies, y otras
tareas.
6. Enviar el documento al cliente: el documento se puede enviar en formato de texto (HTML),
formato binario (imágenes GIF), oincluso en formato comprimido como un fichero ZIP.

Estructura Básica de un Servlet
Aquí tenemos un servlet básico que maneja peticiones GET. Las peticiones GET, para
aquellos que no estemos familiarizados con HTTP, son peticiones hechas por el
navegador cuando el usuario teclea una URL en la línea de direcciones, sigue un enlace
desde una página Web, o rellena un formulario que no especifica unMETHOD. Los
Servlets también pueden manejar peticiones POST muy fácilmente, que son generadas
cuando alguien crea un formulario HTML que especifica METHOD="POST". Los
discutiremos en una sección posterior.

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SomeServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponseresponse)
throws ServletException, IOException {
// Use "request" to read incoming HTTP headers (e.g. cookies)
// and HTML form data (e.g. data the user entered and submitted)
// Use "response" to specify the HTTP response line and headers
// (e.g. specifying the content type, setting cookies).
PrintWriter out = response.getWriter();
// Use "out" to send content to browser
}
}
El...
tracking img