Resumen de Java: Manejadores, servlets y threads

Clasificado en Otras materias

Escrito el en español con un tamaño de 9,3 KB

3 Los manejadores
Los manejadores, también llamados drivers, son un conjunto de clases que implementan
las clases e interfaces del API JDBC necesarias para que una aplicación Java pueda
conectarse con una BD. Cuando los desarrolladores de una BD desean que esta pueda
ser accesible mediante JDBC éstos deben implementar un manejador para esa base de
datos; la misión del manejador será traducir comandos estándar del API JDBC al
protocolo nativo de esa base de datos.

4 Una aplicación JDBC básica
Toda aplicación que acceda a una base de datos empleando el API JDBC debe
una serie de pasos:
1. Establecer una conexión con la base de datos.
2. Ejecutar una o varias instrucciones SQL
3. Si las intrusiones devuelven datos (SELECT) debemos procesarlos.
4. Liberar los recursos de la conexión.

es buena practica liberarlos manualmente,
para que esta liberación se produzca en cuanto dejan de ser útiles.
Los recursos que debemos liberar son el Resultset, el Statment y la propia conexión.
Para liberarlos debemos invocar al método close() de sus correspondieres objetos.
Invocar al método close() de Statment automáticamente libera los recursos de su
ResultSet.

 

Compiladores

Por lo tanto, el compilador se encarga de convertir el programa fuente en un programa objeto.


Intérpretes

El intérprete es un programa que traduce el código de alto nivel a código binario pero, a diferencia del compilador, lo hace en tiempo de ejecución. Es decir, no se hace un proceso previo de traducción de todo el programa fuente a binario, sino que se va traduciendo y ejecutando instrucción por instrucción.


En general, la principal desventaja de los intérpretes, es que cuando un programa es interpretado, suele ejecutarse más lento que si el mismo programa estuviese compilado. Esto se debe a que el intérprete debe analizar cada sentencia en el programa en cada ejecución (un análisis en tiempo real).

Los Applets
La clase Applet proporciona todo lo necesario para la creación de applets. Está contenida en el paquete java.applet, por tanto, siempre que deseemos desarrollar un applet deberemos importar este paquete, así como también el paquete java.awt, java.awt.event, y javax.swing que contienen todas las herramientas necesarias para desarrollar interfaces gráficas.

Los applet tienen la ventaja de ejecutarse en Internet sobre el navegador en el equipo del cliente, pero los diseñadores de Java les colocaron algunas restricciones para evitar que estos dañen o inserten virus en las máquinas donde se ejecutan, entre ellas están:
a) No pueden leer o escribir en el sistema de archivos desde un navegador
b) Solo tienen acceso al ervidor definido dentro del applet en un programa que use sockets
c) impedimento para ejecutar programas en el cliente
d) impedimento para cargar programas nativos incluidas las DLL.


Si queremos que este applet maneje eventos, debemos importar el paquete java.awt.event.* y utilizar la interface ActionListener para implementar la accion que responda al evento en el método actionPerformed()

Ciclo de vida de un applet
init()
: es el primer método que se ejecuta al cargar el applet y sólo se ejecuta una vez. Se debe utilizar para inicializar las variables.
start(): se ejecuta después del init(). Permite reinicializar un applet después de que se haya parado. El método 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 página HTML que contiene el applet. Se utiliza para parar el applet; para volverlo a iniciar se llama el método start().
destroy(): se ejecuta cuando el entorno determina que el applet debe ser borrado completamente de la memoria. El método stop() siempre se ejecuta antes que el destroy.

Qué es un Thread
La Máquina Virtual Java (JVM) es un sistema multi-thread. Es decir, es capaz de ejecutar varias secuencias de ejecución (programas) simultáneamente. La JVM gestiona todos los detalles, asignación de tiempos de ejecución, prioridades, etc, de forma similar a como gestiona un Sistema Operativo múltiples procesos

La diferencia básica entre un proceso de Sistema Operativo y un Thread Java es que los Threads corren dentro de la JVM, que es un proceso del Sistema Operativo y por tanto comparten todos los recursos, incluida la memoria y las variables y objetos allí definidos. A este tipo de procesos donde se comparte los recursos se les llama a veces 'procesos ligeros' (lightweight process).

los threads son útiles porque permiten que el flujo del programa sea divido en dos o más partes, cada una ocupándose de alguna tarea. Por ejemplo un Thread puede encargarse de la comunicación con el usuario, mientras otros actuan en segundo plano, realizando la transmisión de un fichero, accediendo a recursos del sistema

La Clase Thread
La forma más directa para hacer un programa multi-thread es extender la clase Thread, y redefinir el método run(). Este método es invocado cuando se inicia el thread (mediante una llamada al método start() de la clase thread). El thread se inicia con la llamada al método run y termina cuando termina éste.


·La clase Thread está en el package java.lang. Por tanto no es necesario el import.
·El constructor public Thread(String str) recibie un parámetro que es la identificación del Thread.
·El método run contiene el bloque de ejecución del Thread. Dentro de él, el método getName() devuelve el nombre del Thread (el que se ha pasado como argumento al constructor).
·El método main crea dos objetos de clase ThreadEjemplo y los inicia con la llamada al método start(). (el cual inicia el nuevo thread y llama al método run() ).
·Observa en la salida el primer mensaje, de finalización del thread main. La ejecución de los threads es asíncrona. Realiza la llamada al método start(), éste le devuelve control y continua su ejecución, independiente de los otros threads.

¿Qué es un Servlet?
Los servlets son clases de Java que amplían la funcionalidad de un servidor Web mediante la generación dinámica de páginas Web. Un entorno de ejecución denominado motor de servlets administra la carga y descarga del servlet, y trabaja con el servidor Web HTTP para dirigir las peticiones de los usuarios remotos(clientes) a los servlets y enviar la respuesta a los clientes.

Los servlets nacen para cubrir las limitaciones de los applets, a saber:
·Limitación al acceso de otro servidor que no sea el mismo en que se aloje el applet.
·Limitación en el acceso a los servicios del servidor
·Limitaciones de seguridad. (ingeniería inversa para retocar el applet, para acceso a la lógica del negocio del sistema en cuestión)
Características de los Servlets
Las características que hacen que los servlets muy convenientes son:

Son 100% puro Java, lo que los hacen multiplataforma
Es un Lenguaje Orientado a Objetos y por lo tanto poseen todas las características que se derivan de esto.
Puede utilizar todas las tecnologías de Java : clases de almacenamiento, hilos o threads, acceso a bases de datos, flujos de E/S, RMI, acceso a la red, etc.
Son seguros ya que aplican el Security Manager de Java
La comunicación con otros servlets es muy sencilla
Mediante el manejo de excepciones los errores pueden manejarse sencillamente durante la ejecución del servlet.

Programacion estructurada : es una teoria de programacion que consiste en construir programas de facilcomprension.

es especialmente util cuando se necesitan realizarcorrecciones o modificaciones despues de haber concluido un programao aplicacion

 

una aplicación web es una colección de servlets, paginas JSP, clases Java, archivos de descripción de la aplicación, documentos estáticos HTML, XHTML, imágenes, etc. y otros recursos que pueden ser empaquetados y ejecutados en distintos servidores de diferentes proveedores. Esto es, una aplicación web se podría definir coma la capa web de cualquier aplicación.

Entradas relacionadas: