La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Servlets Servlets son módulos que extienden a servidores orientados a request/response, como por ejemplo Servidores Web “java-enabled”. Un servlet puede.

Presentaciones similares


Presentación del tema: "Servlets Servlets son módulos que extienden a servidores orientados a request/response, como por ejemplo Servidores Web “java-enabled”. Un servlet puede."— Transcripción de la presentación:

1 Servlets Servlets son módulos que extienden a servidores orientados a request/response, como por ejemplo Servidores Web “java-enabled”. Un servlet puede ser el responsable de tomar datos de una “forma” HTML y aplicar un método para actualizar las bases de datos de la una compañía de acuerdo a ellos. Servlets reemplazan a los CGI scripts. They provide a way to generate dynamic documents that is both easier to write and faster to run. Servlets also address the problem of doing server-side programming with platform-specific APIs: they are developed with the Java Servlet API, a standard Java extension.

2 Trabajo Preliminar El paquete javax.servlet provee interfaces y clases que permiten escribir y compilar servlets No viene con el j2sdk, es necesario bajar el jsdk.jar y ponerlo en el directorio adecuado No todos los servidores web son capaces de interpretar servlets Cada servidor de servlets tiene sus propias reglas, en la mayoría de los casos hay que ponerlos en un directorio específico Para compilar los programas servlets hay que poner el jsdk.jar file en el directorio de las extensiones (c:\jdk1.3\jre\lib\ext)

3 La Anatomía de un Servlet Un nuevo tipo (clase) de servlet es especificado extendiendo la clase HttpServlet Existen métodos predefinidos: –init() es llamado por el servidor web cuando el servlet se “sube” la primera vez (uploaded) –doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException se llama cuando el servlet es invocado con una peticion Http GET, que es la normal cuando se contacta un serv. –doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException se ejecuta cuando el servlet fue invocado con una petición Http POST

4 Anatomía de un servlet Una petición GET se genera siempre que una petición http es ingresada en el browser (http://www.yahoo.com/ implica GET index.html Httpx.x )http://www.yahoo.com/ Cuando el servlet se llama por primera vez, se inicializa y 4-6 threads son levantados para atender a cleintes en paralelo cuando vayan apareciendo, Para ahorrar tiempo En la mayoría de los casos los servlets son contactados a través de forms en páginas html. En este caso es posible especificar parámetros y generar una petición POST

5 Primer ejemplo The servlet will be contacted directly by an http expression in the browser: –http://grafica05.dcc.uchile.cl/examples/servlets/ SimpleServlethttp://grafica05.dcc.uchile.cl/examples/servlets/ SimpleServlet Esto causará que el método doGet sea llamado El servlet responderá exribiendo en la pagina del browser que lo invocó una frase pequeña

6 Un segundo ejemplo Vamos a implementar un web counter Va a contabilizar cuántas veces el servlet ha sido creado (new) y cuántas veces han sido llamadas todas las instancias ver Count.java

7 Pasando parametros Es posible pasar parámetros en la línea de invocación URL –http://host:port/servlet?param1=value1&param2=value2..http://host:port/servlet?param1=value1&param2=value2 El servlet puede preguntar por los valores de los parámetros si conoce el nombre de ellos de la siguente manera: –String value = req.getParametervalues(param1) Parámetros pueden ser solamente strings ver ServletParameter1.java

8 Lo ideal es hacerlo con Forms Una Form es una página html que puede contener objetos gráficos para recolectar información la que manda al servidor como una URL: Podemos usar el mismo servlet !!!! –mirar ServletParameter1.html Otro ejemplo: –SurveyServlet with JdcSurvey

9 Obteniendo información acerca del cliente...que contactó al servlet como por ejemplo: –URL request –host del cliente –nombres de parámetros y valores –Header del request –etc Ver SnoopServlet?par1=val1&par2=val2

10 Session Tracking Session tracking es el mecanismo que usan los servlets para mantener información acerca del estado de los requests de un usuario (esto es, requests originados de un mismo browser) en un período de tiempo. See SessionServlet

11 Using Cookies Cookies are a way for a servlet to send some information to a client to store, and for the server to later retrieve its data from that client. Servlets send cookies to clients by adding fields to HTTP response headers. Clients automatically return cookies by adding fields to HTTP request headers. Cookies have a name and a value (additionally they can have some comments). In addition to a name and a value, you can also provide optional attributes such as comments. A server can provide one or more cookies to a client.

12 Using Cookies To send a cookie 1.Instantiate a Cookie object 2.Set any attributes 3.Send the cookie To get information from a cookie, 1.Retrieve all the cookies from the user's request 2.Find the cookie by its name 3.Get the values of the cookies that you found


Descargar ppt "Servlets Servlets son módulos que extienden a servidores orientados a request/response, como por ejemplo Servidores Web “java-enabled”. Un servlet puede."

Presentaciones similares


Anuncios Google