Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin
La tecnologa Java
CURSOS EN LNEA
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 1
Applets Los applets son pequeos programas de J ava o mini aplicaciones que se ejecutan dentro de la ventana de despliegue del navegador de Internet (como Netscape o Internet Explorer, etc.,). Usualmente despliegan elementos multimedia, como grficas, imgenes, texto, botones, sonido, etc.
1. Ejemplo de un applet que es un simple graficador de funciones. El applet que puede ser uno o varios archivos .class y la pgina Web .html que lo invoca se alojan en el servidor HTTP. Aunque se alojen en el servidor los applets se ejecutan del lado del cliente, cuando ste solicita una pgina Web que contenga un applet. De esta forma, se evita saturar el servidor de solicitudes de los clientes y se delega su ejecucin del lado del cliente. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 2
2. Otro ejemplo de applet para el caso de un monitoreo volcnico del volcn Popocatpetl El servidor HTML enva el byte code mediante TCP/IP y el navegador del cliente interpreta el byte code para ejecutarlo. El navegador puede interpretar el byte code del applet gracias a que tiene el plugin del J RE, o de lo contrario solicita al cliente descargarlo e instalarlo automticamente. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 3
3. Proceso de ejecucin de un applet En los applets se dibujan o pintan elementos grficos y elementos multimedia en la ventana del navegador mediante el mtodo paint() Su ejecucin sigue un ciclo de vida el cual inicia en el mtodo init(), e inmediatamente despus se invoca al mtodo en start(). Un applet termina su ciclo de vida con el mtodo destroy(). La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 4
4. Ciclo de vida de un applet init(): es el primer mtodo que se ejecuta al cargar el applet y slo se ejecuta una vez. Se debe utilizar para inicializar las variables. start(): se ejecuta despus del init(). Permite reinicializar un applet despus de que se haya parado. El mtodo start() se ejecuta cada vez que se muestra en pantalla el documento HTML que contiene el applet. paint(): se ejecuta cada vez que se debe volver a pintar la salida de un applet. stop(): se ejecuta cuando el navegador abandona la pgina HTML que contiene el applet. Se utiliza para parar el applet; para volverlo a iniciar se llama el mtodo start(). destroy(): se ejecuta cuando el entorno determina que el applet debe ser borrado completamente de la memoria. El mtodo stop() siempre se ejecuta antes que el destroy. En esta clase el mtodo inicial para ejecutar un applet es init() cuando se omite se usa el mtodo start() , si tambin se omite se usa el mtodo paint() (esto significa que no requiere de un mtodo main()). La clase Applet proporciona todo lo necesario para la creacin de applets. Est contenida en el paquete java.applet, por tanto, siempre que deseemos desarrollar un applet deberemos importar este paquete, as como tambin el paquete java.awt , java.awt.event, y javax.swing que contienen todas las herramientas necesarias para desarrollar interfaces grficas. Un applet es un programa que se ejecuta mediante un navegador de Internet o con el programa herramienta del SDK appletviewer.exe. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 5
Con la versin de J ava 2 la estructura para crear un programa de tipo applet tiene la siguiente forma: / / Cr eaci n del Ar chi vo . j ava i mpor t j ava. appl et . Appl et ; i mpor t j ava. awt . *; i mpor t j ava. awt . event . *; publ i c cl ass Nombr e ext ends Appl et i mpl ement s Act i onLi st ener { publ i c voi d i ni t ( ) { . . . . . . . } publ i c voi d pai nt ( ) { . . . . . . . } publ i c voi d act i onPer f or med( Act i onEvent e) { . . . . . . . } } / / f i n del appl et Nombr e Si queremos que nuestro applet maneje eventos, debemos importar el paquete java.awt.event.* y utilizar la interfaz ActionListener para implementar la accin que responda al evento en el mtodo actionPerformed() Los applets son ejecutados mediante un navegador (Internet Explorer, Netscape, Opera, etc.) o con el appletviewer, pero esto es realizado mediante un archivo con extensin HTML. En este archivo debe tener la etiqueta o tag <APPLET></APPLET> con la siguiente estructura: <- - Ar chi vo. ht ml - > <APPLET Code = "Nombre archivo de clase" CodeBase = "Ruta (URL) a los archivos de clase" Align = "Alineacin del Applet" Width = "Ancho en pixeles del Applet" Height = "Alto en pixeles del Applet" > <PARAM name = "nombre del parmetro" value = "valor del parmetro"> </APPLET> En la etiqueta <APPLET></APPLET> algunos argumentos permiten modificar la ubicacin del espacio que ocupa el applet en una pgina Web, algunos de estos atributos son: a) ALI GN, determina la alineacin del applet, los valores que toma son: LEFT, RIGHT , TEXTTOP, MIDDLE, BASELINE, BOTTOM, ABSBOTTOM, TOP, ABSMIDDLE. b) HSPACE, indica el espacio horizontal entre el applet y el texto que lo rodea. c) VSPACE, indica el espacio vertical entre el applet y el texto que lo rodea. d) CODEBASE, contiene la ruta de las clases del applet, si se omite se considera el mismo directorio de la pgina Web. e) PARAM, contiene una pareja de NAME y VALUE para enviar parmetros al applet, y pueden ser uno o mas etiquetas PARAM. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 6
Ejemplo Haga un programa en J ava de tipo applet que dibuje en la ventana del navegador un rectngulo, un circulo, una lnea, que escriba su nombre, su direccin y telfono, as como un logo de su empresa u organizacin. Su nombre, direccin y telfono que sean recibidos con parmetros por el applet con el mtodo getParamenter(). Si no tiene logo de empresa u organizacin, busque en Internet un dibujo del Duke (mascota del J ava). Se utilizar el NetBeans 5.5 para realizar su applet.
5. Salida del applet 1. Sobre el paquete unam de clic al botn derecho del ratn y seleccione la opcin New, File/ Folder...
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 7
2. Aparece el cuadro de dilogo New File. 3. Seleccione en categories J ava Clases 4. Seleccione en File Types Applets 5. De clic al botn Next >
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 8
6. Aparece el cuadro New Applet. 7. En el campo Class Name escriba el nombre del applet AppletUno 8. Vea que este applet estar en el paquete unam 9. Vea la ruta del archivo AppletUno.java en el campo Created File.
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 9
10. Aparece una nueva ventana de edicin con la cejilla AppletUno.java. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 10
11. El NetBeans 5.5 IDE pone comentarios de tipo javadoc. 12. Substituya este cdigo por el que se presenta en la siguiente imagen.
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 11
En la lnea 1 se pone la instruccin: package unam; que indica que la clase AppletUno pertenece al paquete unam dentro del proyecto PROYECTOUNO. La lnea 2 importa la clase java.awt.Graphics para poder dibujar las figuras en el mtodo paint() La lnea 3 importa la clase Image del paquete java.awt y es para manejar la imagen. La lnea 4 importa la clase URL del paquete java.net para obtener un objeto URL con la ruta base.
En la lnea 6 esta la definicin de la clase AppletUNo que es una subclase de java.applet.Applet. Las lneas 7 y 8 se definen las variables de instancia utilizadas por el applet. De la lnea 9 a la 15 esta el mtodo de inicializacin del applet. Las lneas 10, 11, 12 obtienen los parmetros del applet con el mtodo getParameter(). La lnea 13 obtiene el objeto URL para la ruta base. La lnea 14 obtiene el objeto Image con el mtodo getImage() el cual en el primer argumento se le pasa la ruta base y el segundo la ruta relativa.
No hay que olvidar que el applet necesita una imagen, la ruta base (code base) y la ruta relativa!
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 12
De la lnea 17 a la 26 el mtodo paint() pinta en el navegador las figuras. Observe el parmetro g de la clase java.awt.Graphics el cual es usado porque esta clase tiene todos los mtodos para dibujar.
Los mtodos usados tienen comentarios que describen que es lo que dibujan. En la lnea 27 cierra la llave de mbito de la clase AppletUno 13. Una vez capturado el cdigo del AppletUno.java hay que compilarlo. 14. Seleccione del men Build la opcin Compile AppletUno.java F9 La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 13
15. En la ventana de salida (Output) debe indicar que no hay errores y que fue una compilacin exitosa.
Ahora hay que crear la pgina Web que invoque al applet, y para esto hay que codificar un archivo html donde se encuentre el tag <APPLET> </APPLET> 1. Seleccione el comando File | New File... 2. Aparece el cuadro New File. 3. Seleccione en Categories: Other. 4. Seleccione en File Types: HTML File 5. Clic al botn Next > La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 14
6. Aparece el cuadro New HTML File 7. En el campo File Name: escriba miapplecito 8. En folder escoja src\unam 9. De clic al botn Finish La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 15
10. Aparece una nueva ventana de edicin para el archivo miaplecito.html 11. Aparece tambin una paleta de componentes para HTML
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 16
12. Escriba a continuacin el cdigo HTML con el tag <APPLET></APPLET> en la ventana de edicin miapplecito.html
La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 17
En la lnea 10 se define la etiqueta <APPLET></ APPLET>
CODEBASE indica la ruta base que es un URL que indica donde estn las clases del applet. CODE indica la ruta relativa para encontrar el archivo .class del applet. WIDTH y HEIGHT dan el ancho y alto en pxeles que ocupar el applet en la ventana del navegador. De las lneas 13 a 15 tenemos los parmetros del applet y cuyo valor es recuperado por el mtodo getParameter(). Para ejecutar el applet hay que dar doble clic sobre el archivo miapplecito.html o abrirlo con el navegador.
Vista del applet AppletUno en la ventana del navegador. La tecnologa Java Oscar Alejandro Gonzlez Bustamante
Direccin General de Cmputo y de Tecnologas de Informacin y Comunicacin 18