JSP

EnyaOtakuGamerTsundere 727 views 31 slides May 30, 2014
Slide 1
Slide 1 of 31
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31

About This Presentation

Introduccion al JSP, elementos, características y acciones


Slide Content

JSP Por : Enya Alexandra Fernandez 1101

Que es JSP? Ventajas Introducción Objetos implícitos Variables implícitas y predefinidas Etiquetas Elementos Acciones Contenido

Que es??? JSP es una tecnología que ayuda a los desarrolladores de software a crear páginas web dinámicas basadas en HTML, XML, entre otros tipos de documentos. JSP es similar a PHP, pero usa el lenguaje de programación Java. Los archivos JSP combinan HTML con etiquetas especiales y fragmentos de código Java. Para desplegar y correr JSP, se requiere un servidor web compatible con contenedores servlet como Apache Tomcat o Jetty .

JSP no nos da nada que no pudierámos en principio hacer con un servlet . Pero es mucho más conveniente escribir HTML normal que tener que hacer un billón de sentencias println que generen HTML. Además, separando el formato del contenido podemos poner diferentes personas en diferentes tareas. Ventajas

Introducción JSP es una especificación de Sun Microsystems Sirve para crear y gestionar páginas web dinámicas Permite mezclar en una página código HTML para generar la parte estática, con contenido dinámico generado a partir de marcas especiales <% .... %> El contenido dinámico se obtiene, en esencia, gracias a la posibilidad de incrustar dentro de la página código Java de diferentes formas  Hay 3 formas de añadir contenido dinámico Su objetivo final es separar la interfaz (presentación visual) de la implementación (lógica de ejecución)

Introducción JSP combina HTML con fragmentos de Java para producir páginas web dinámicas. El fichero que contiene la página HTML tiene la extensión . jsp , y se almacena en el mismo sitio que una página web normal. Cuando un cliente pide una página JSP del sitio web y no se ha ejecutado antes, la página es pasada al motos de JSP, el cual compila la página convirtiéndola en un servlet , la ejecuta y devuelve el contenido de los resultados al cliente. ¿ Cuál es el funcionamiento básico? Muy sencillo : 1) El cliente solicita una página . jsp 2) La solicitud llega al servidor 3 ) El servidor «ejecuta» la página . jsp y obtiene un texto en formato html 4) El servidor envía el texto html al cliente 5 ) El navegador del cliente visualiza el texto html como si realmente hubiera estado almacenado en el servidor.

Introducción

Introducción Página JSP  Servlet La página JSP se convierte en un servlet La conversión la realiza en la máquina servidora el motor o contenedor JSP , la primera vez que se solicita la página JSP Este servlet generado procesa cualquier petición para esa página JSP Si se modifica el código de la página JSP, entonces se regenera y recompila automáticamente el servlet y se recarga la próxima vez que sea solicitada

Funcionamiento

JSP utiliza los objetos implícitos, basados en la API de servlets . Estos objetos están disponibles para su uso en páginas JSP y son los siguientes: Objeto request Representa la petición lanzada en la invocación de service (). Proporciona entre otras cosas los parámetros recibidos del cliente, el tipo de petición (GET/POST) Objeto response Instancia de HttpServletResponse que representa la respuesta del servidor a la petición. Ámbito de página Objetos implícitos

Las páginas JSP incluyen ciertas variables privilegiadas sin necesidad de declararlas ni configurarlas: Variables implícitas

RESPONSE SESSION PAGE PAGECONTEXT OUT APLICATION CONFIG Variables predefinidas

RESPONSE: Esta variable es el HttpServletResponse del Servlet y que esta asociado a la respuesta que la pagina JSP dara al cliente. Variables predefinidas OUT: Es el PrintWriter que nos sirve para escribir en la respuesta que el daremos al cliente, es decir a la pagina resultante de la llamada a la pagina JSP. Sin embargo este PrintWriter no es uno normal, sino que tiene buffer y es llamado JSPWriter . SESSION: Es el HttpSession asociado a la petición. Las sesiones se crean automáticamente, por eso esta variable siempre existe a no ser que con la directiva page lo desactivemos. PAGECONTEXT: esto representa una clase llamada PageContext que sirve para encapsular características especificas del servidor, el significado de esto es que si accedemos a propiedades especificar del servidor mediante estas variables, entonces nuestro código funcionara en la mayoría de los motores JSP. APLICATION: Este es el ServletContext obtenido mediante getServletConfig (). getContext (). PAGE: Es lo mismo que this en cualquier otra clase de java. CONFIG: Este es el objeto ServletConfig para esta página.

Son las etiquetas pertenecientes a la especificación JSP. Proporcionan una funcionalidad básica . Un primer grupo de etiquetas proporciona funcionalidad a nivel de la página de una manera muy simple: Etiquetas Un segundo grupo permite manipular componentes JavaBean sin conocimientos de Java.

Expresiones Declaraciones Comentarios Scriptlets Directivas elementos

Se usan para mandar valores directamente a la pagina web resultante de la JSP, <%= expresion %>, la expresion es ejecutada, se convierte a una cadena de caracteres ( String ) y insertada en la pagina.  En las expresiones podemos usar gran cantidad de variables predefinidas, los mas usados son: request , de la clase HttpServletRequest response, de la clase HttpServletResponse session , de la clase HttpSession que esta asociada al request , si es que trabajamos con sessions out , se trata de una clase PrintWriter usada para imprimir directamente en la pagina resultante. Expresiones

Las declaraciones JSP nos permiten configurar variables para su uso posterior en expresiones o scriptlets. También podemos declarar variables dentro de expresiones o scriptlets en el momento de usarlas. El ámbito es toda la página JSP, no hay concepto de variables de ejemplar. Es decir, no tenemos que declarar variables de ejemplar para usar en más de una expresión o scriptlet. Las declaraciones van encerradas entre etiquetas de declaración  <%! Codigo Java %> . Como las declaraciones no generan ninguna salida, normalmente se usan en conjunción con expresiones JSP o scriptlets. declaraciones

Cuando hablamos de comentarios en JSP tenemos que considerar básicamente dos circunstancias, a saber: 1) Comentarios que aparecen como etiquetas HTML en un archivo jsp y que  SÍ  recibe el cliente o peticionario de la página, esto es: <!– Comentario HTML (Este comentario sí se pasa al cliente) –> esta instrucción al ser una etiqueta/marca HTML se transmitirá directamente a la página HTML de salida generada por el servlet asociado al JSP para enviarla al cliente solicitante. Esta instrucción es transparente para el Motor JSP. 2) Comentarios escritos en Java entre los identificadores <% y %> que  NO  se enviarán al cliente solicitante de la página, sólo aparecen en la propia página JSP y en su servlet asociado. <% // Comentario en Java de una sola línea  %> o este otro <%    /* Comentario en Java de una línea y otra línea, y otra línea, o muchas líneas */%> comentarios

Si lo que queremos hacer es algo mas complejo que una expresion , es decir crear un código java complejo e insertarlo en el servlet resultante de la compilación de la pagina JSP usaremos Scriptlets, la manera de insertar este código es: <% código a incluir %> scriptlets

Con los Scriptlets tambien podemos escribir en la pagina resultante sin usar las expresiones, la manera de hacerlo es usar la variable out con su método println : <% out.println ("Salida a la pagina"); %> Si queremos usar los caracteres "%>" dentro de un scriplet , debemos poner "%\>". scriptlets

Tabling Include Page directivas

La directiva  taglib  indica al motor jsp que la página va a utilizar “ tag libraries ” o librerías de etiquetas . Estas librerías contienen etiquetas creadas por el propio programador con sus correspondientes atributos que encapsulan determinada funcionalidad. La sintaxis es <%@ taglib uri =“ . . . . . ” prefix = “ . . . . . ” %> donde el atributo   uri  permite localizar el fichero descriptor de la librería de extensión tld . el atributo  prefix  especifica el identificador que todas las etiquetas de la librería deben incorporar y que no puede coincidir con las palabras reservadas jsp :, jspx :, java:, javax :, servlet :, sun :, and sunw : Como cabe esperar existe un procedimiento para crear estas librerías y que aquí no vamos a analizar, lo que si haremos es utilizar un par de ellas previamente construidas. Directivas tabling

La directiva  include  inserta el contenido de otro fichero en el fichero principal JSP, en la línea donde está situada y antes de ser procesada o traducida a servlet . Su sintaxis es la siguiente. <%@ include file=” url relativa” %> En otras palabras, la directiva  include  simplemente copia el contenido del archivo incluido byte a byte, siendo el resultado similar a si copiamos el texto del archivo incluido y lo pegamos en el JSP. Directivas include

Directivas

Esta directiva se usa para establecer las propiedades generales de una página JSP. Podemos usar esta directiva varias veces a lo largo de la pagina JSP, pero sólo podemos asignar el valor de un atributo una vez por cada una, excepto para el atributo import . Los valores de la directiva se aplicarán a toda la pagina. Sintaxis Aquí podemos ver la sintaxis de la directiva  page  con todos sus atributos. Los valores por defecto se muestran en  negrita . Los corchetes ([...]) indican un término opcional. La barra vertical (|) proporciona una elección entre dos valores como true y false. Directivas page <%@ page [ languaje ="java"] [ extends =" package . class "] [ import = "{  package . class |package .*}, ..." ] [ session =" true|false "] [ buffer="none|8kb| size kb"] [ autoFlush =" true|false "] [ isThreadSafe =" true|false "] [ info =" text "] [ errorPage =" URLrelativa "] [ contentType =" mimeType [ ; charset = characterSet ]” | “ text / html ; charset =ISO-8859-1″] [ isErrorPage =" true|false "] %>

Include Forward Acciones

La acción  forward  se utiliza en JSP para redirigir la petición a otras página JSP, a otro servlet o a otro recurso estático. Es muy útil cuando se quiere separar la aplicación en diferentes vistas, dependiendo de la petición interceptada. Cuando se ejecuta el servlet origen de la página inicial se redirige la petición hacia el destino y ya no se vuelve al servlet original. Pueden pasarse parámetros de la página origen a la de destino, que se recuperan con el método  getParameter  del objeto implícito  request . (Ver en este tutorial). Acciones: forward

SINTAXIS Acciones: include donde page: url local que apunta al recurso que va a incluirse. No admite ningún protocolo, nombre de host o número de puerto. param : Opcionalmente puede incluir parámetros a la página a la que desvía la petición. Este parámetro podrá recuperarse con el objeto implícito request .

La acción include permite la inclusión de la salida de otras páginas jsp , html , ficheros de texto no formateado, ficheros Java, ficheros XML, etc. La inclusión se realiza, no durante la traducción de la jsp (como ocurría con la directiva include ), sino justo después, una vez que el servlet generado ya ha sido creado. El mecanismo de inclusión de la salida de la página incluida, hace que si una página incluida cambia, no es necesario compilar la página que la contiene. Acciones: include

SINTAXIS: Tiene dos atributos, uno obligatorio cuyo nombre es page y otro opcional cuyo nombre es flush Acciones: include donde page: url local que apunta al recurso que va a incluirse. No admite ningún protocolo, nombre de host o número de puerto. flush : opcional. Por defecto, toma el valor de false. Si se cambia a true, el búfer de salida se vacía antes de que se incluya el recurso asociado a la acción. Este atributo no suele utilizarse. param name , opcionalmente, puede pasar parámetros a la página principal que contiene la acción. Desde allí podrán tomarse los datos con getParameter del objeto request .

Java servlet pages
Tags