JSP

MAESTRO(A): Olivia Hernández arce ALUMNO(A): María Leticia de la Cerda Navarro. GRADO Y GRUPO: 5ºC T/V MATERIA: programa

Views 596 Downloads 60 File size 224KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

MAESTRO(A): Olivia Hernández arce ALUMNO(A): María Leticia de la Cerda Navarro. GRADO Y GRUPO: 5ºC T/V MATERIA: programación avanzada.

JSP JSP (java server pages): está orientada a crear páginas web con la programación en java, las páginas están compuestas de código HTML/XML mezclándose con etiquetas especiales para programar el scripts de servidor en sintaxis en java, por lo que podemos escribirlas con el editor habitual. MOTOR JSP: este está basado en los servlets de java, que están destinados a ejecutarse en el servidor, este motor incluye etiquetas de HTML, antes de que sean funcionales los archivos el motor lleva una fase de traducción en la pagina con un servlet implementado en un archivo de clase (byte codes de java), esta es solo llevada a cavo cuando se recibe la primera solicitud de la pagina jsp. Ejemplo de una página JSP: (en la imagen se ve un ejemplo simple de una página JSP con un esquema de conversión con un servlet).

Un requisito para poder aprender jsp es tener conocimiento HTML, comprender y tener algo de experiencia en programación de java (esta es un lenguaje de programación orientada a objetos por completo). Ya conociendo el programa se puede estudiar por encima el sistema servlet, así dando una mejor idea de funcionamiento interno del motor jsp. Pero para poder utilizarlo se necesita el programa tomcat, ya que el contenedor del servlet es usado oficialmente en la implementación de jsp. El jsp también se puede conectar a Mysql un ejemplo:

Línea 1: definición del package que contendrá la clase, necesario para luego importar la clase dentro la página. Líneas 3 y 4: Importamos dos clases standard de Tomcat. Línea 6: Definición de la clase, como pública, con el nombre ConnectionCreator. Línea 8: Definición del único método de la clase, getSqlServerConnection, que recibirá como parámetros una lista de valores, para devolver luego, un objeto java.sql.Connection. Los parámetros que recibe la clase son: data base (nombre del data base), servername (nombre o ip del data base server), port (puerta de conexión, en el caso de SQL generalmente es 1433), username y password. Línea 10: try, es el comienzo del bloque de código que ejecutaremos Línea 11: Se instancia el driver de SQL, que obviamente debe estar presente ya sea en las librerías de Tomcat o en las de nuestro sitio (carpeta \WEB-INF\lib). Estos drivers se descargan gratuitamente de Internet y vienen empaquetados bajo la forma de archivos JAR. Líneas 12 a 14: Construimos una cadena de caracteres llamada url, que será utilizada luego para abrir la conexión. La estructura de este texto es estándar, solo hay que intercalar los parámetros recibidos. Línea 15: Finalmente llegamos al corazón de la clase, instanciamos un objeto Connection y, a través del DriverManager, tratamos de conectarnos al servidor, pasando como parámetro la url construida anteriormente. Líneas 16 a 19: No son estrictamente necesarias, pero sirven como ayuda al programador. Controlamos que la conexión haya sido exitosa y que esté abierta (por defecto siempre lo está) y mandamos a la consola de Tomcat el mensaje correspondiente. Lo mismo en el caso

de que el proceso haya fallado. Línea 21: la función devuelve el objeto. Líneas 23 a 26: En el caso de que se produzca un error dentro la estructura try, el mismo es procesado por la estructura catch, que imprime el mensaje de error producido.

SERVLET Los servlet es un método de creación de páginas web dinámicas en los servidores utilizando código java, este es ejecutado en una maquina virtual de java permitiendo que se pueda utilizar en cualquier tipo de ordenador, siempre y cuando tenga la maquina virtual en esta, El servlet es un programa que recibe peticiones y genera a partir de ellas una página web. El ciclo de vida de un servlet es la instancia y la iniciación, cargándose primero la clase y creándose una instancia así invocando su método int. Todo Servlet tiene que extender la clase HttpServlety sobrescribir el método doGetódoPost, dependiendo de si los datos se envían con GET o con POST importjava.io.*; importjavax.servlet.*; importjavax.servlet.http.*; publicclassMiServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestHtt pServletResponserequest, response) throwsServletException, IOException{ // Se usa"request" para leer cabeceras HTTP entrantes(e.j. cookies) // y datos de formulariosHTML (e.j. Datos que el usuario proporciona en el “submit”) // Se usa"response" para especificar la línea de respuesta HTTP y las cabeceras // (e.j. Especificar el tipo de contenido, poner las cookies).PrintWriterout = response.getWriter(); // Se usa"out" para enviar el contenido al navegador del cliente } }

HILOS EN JAVA Un hilo en java es una secuencia de instrucciones que es controlada por un planificador (el planificador gestiona el tiempo de ejecución y asigna tiempo a los diferentes hilos que se encuentran actualmente presentes) que se comporta como un flujo secuencial, normalmente un hilo de proceso (sele llama así al ámbito del sistema operativo) suele tener acceso a todos los recursos disponibles al proceso, actuando sobre una memoria compartida. Los hilos en java se encuentran en el paquete: java.lang.thread

y se puede usar por ejemplo dos hilos para realizar un pequeño pingPONG: Thread PingThread = new Thread(); PingThread.start(); Thread PongThread = new Thread(); PongThread.start();

Por defecto, un hilo nuevamente creado y lanzado aún siendo activado así no hace nada. Sin embargo, los hilos se ejecutan durante un tiempo infinito y hay que abortar el programa de forma bruta: control-C en el terminal. Extendemos la clase y sobre-escribimos el método run()para que haga algo útil: public class CD_PingThread extends Thread { public void run() { while(true) { System.out.print("ping "); } } }

El hilo hereda todo de la clase Thread, pero sobre-escribe el método run(). Hacemos lo mismo para el otro hilo: public class CD_PongThread extends Thread { public void run() { while(true) { System.out.print("PONG "); } } }

Y reprogramamos el hilo principal: CD_PingThread PingThread=new CD_PingThread(); PingThread.start(); CD_PongThread PongThread=new CD_PongThread();

PongThread.start();

Existe el método yield() (cede) para avisar explícitamente al planificador de que debe cambiar los hilos: public class CD_PingThread extends Thread { public void run() { while(true) { System.out.print("ping "); yield(); } } } public class CD_PongThread extends Thread { public void run() { while(true) { System.out.print("PONG "); yield(); } } }

J2MEE MOVIL El entorno móvil tiene un conjunto único de atributos que no es encontrado en otros sitios, intermitentemente está conectada a redes inalámbricas cada vez mayor en diferentes dispositivos móviles, introduciéndose nuevos desafíos para la construcción de aplicaciones de software, requiriendo una resolución sistemática a un nivel de infraestructura del software, sin esta resolución los desarrolladores de aplicaciones serán obligados a producir soluciones de punto, código personalizado y parches.