PDF de programación - Aplicaciones web con Tomcat y MySQL en Linux

Imágen de pdf Aplicaciones web con Tomcat y MySQL en Linux

Aplicaciones web con Tomcat y MySQL en Linuxgráfica de visualizaciones

Actualizado el 7 de Abril del 2020 (Publicado el 12 de Abril del 2017)
790 visualizaciones desde el 12 de Abril del 2017
95,8 KB
21 paginas
Creado hace 16a (24/10/2003)
Aplicaciones web con Tomcat y MySQL en Linux

Aplicaciones web con Tomcat y MySQL en Linux

En este artículo se muestra como usar las tecnologías JDBC y Java Servlet
para la creación de aplicaciones web que interactúen con una base de datos

MySQL cuando se trabaja principalmente sobre una plataforma Linux.

www.mysql-hispano.org

Fecha de creación: 24 Oct del 2003 - 05:41 am

Aplicaciones web con Tomcat y MySQL en Linux

Introducción

Una aplicación web es cualquier aplicación que utiliza el Protocolo de Transferencia de Hipertexto o HTTP
como principal protocolo de comunicación y de intercambio de información entre un cliente y un servidor.

El web se diseñó originalmente como un medio para suministrar contenidos por medio de páginas
HTML estáticas. Cuando un navegador web envía una petición a un servidor web, éste último se
encarga de buscar la página solicitada en su sistema de archivos y devolverla al navegador. Sin
embargo, lo que devuelve el servidor web no tiene por qué ser siempre una página HTML estática
almacenada en el servidor, ya que puede tratarse de la salida de un programa que se ejecuta en el
entorno del servidor web. Esto es lo que se ha hecho por mucho tiempo con el uso de la interfaz CGI
(Common Gateway Interface).

CGI es una opción válida ya que permite generar contenido dinámicos, sin embargo presenta una serie
de limitaciones, en especial lo relacionado con la eficiencia. Cada vez que se hace una petición a un
programa CGI, se arranca un nuevo proceso. Si el programa CGI es relativamente pequeño, el costo
de arrancar el proceso puede superar el tiempo de ejecución del mismo. Con los servlets, la Máquina
Virtual de Java permanece en ejecución y administra cada petición mediante un ligero subproceso de
Java, no con un pesado proceso del sistema operativo. En resumen, los servlets son la respuesta de la
tecnología Java a la programación CGI tradicional, y nos proporciona un ambiente de desarrollo más
eficiente, seguro, portable y robusto del lado del servidor, a través del API Java Servlet.

En este artículo se muestra como combinar las tecnologías JDBC y Java Servlet para la creación de
aplicaciones web que interactúen con una base de datos MySQL. Se recomienda leer un artículo
publicado con anterioridad titulado MySQL con Java en Linux en el que se explica el uso del driver
JDBC para MySQL, ya que en este artículo no se darán demasiados detalles acerca del API JDBC, y
más bien nos centraremos en el uso del API Java Servlet.

Dado que los Java Servlets forman la base de otra tecnología para el desarrollo de aplicaciones web
conocida como JSP (JavaServer Pages), es importante conocer los principios básicos de éstos para
realizar un desarrollo efectivo con esta otra tecnología de Java. Cabe mencionar que muchas de las
aplicaciones en sitios reales combinan ambas tecnologías, en lugar de usar sólo una de ellas.

Aunque se da por hecho que no se tienen los conocimientos necesarios del desarrollo de aplicaciones
sobre un servidor web, sí se espera que se tengan los conocimientos básicos de la programación con
Java.

Herramientas necesarias

» Un ambiente de desarrollo para Java, tal como el Java 2 SDK. La versión estándar del SDK 1.4
ya incluye el API JDBC.

» Un servidor de bases de datos MySQL al que se tenga acceso con un nombre de usuario y
una contraseña.

» El driver JDBC para MySQL, Connector/J.

» El servidor de aplicaciones Tomcat que nos permitirá trabajar con los programas en Java.
Con éste se incluye el API Java Servlet.

www.mysql-hispano.org

1 of 20

Aplicaciones web con Tomcat y MySQL en Linux

Creación de la base de datos

Para nuestro ejemplo necesitamos crear una base de datos que nombraremos agendita en la cual
guardaremos una lista de contactos. Los datos que vamos a manejar son únicamente nombre, email y
teléfono. El usuario que tendrá acceso total a esta base de datos es llamado bingo, este usuario
tendrá una contraseña holahola, y además se le permitirá acceso a esta base de datos
únicamente cuando se conecte de manera local (localhost).

* Nótese el uso de la sentencia GRANT que se ejecuta a continuación, y la relación que tiene con los datos
que se mencionaron anteriormente para permitir el acceso a la base de datos agendita.

[eduardo@casita]$ mysqladmin create agendita

[eduardo@casita]$ mysql agendita
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3525 to server version: 3.23.54

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> CREATE TABLE contactos
-> (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
-> nombre varchar(80), telefono varchar(20), email varchar(60));
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO contactos VALUES
-> (0,'Pepe Pecas','8282-7272','pepe@hotmail.net');
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO contactos VALUES
-> (0,'Laura Zarco','2737-9212','lauris@micorreo.com');
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO contactos VALUES
-> (0,'Juan Penas','7262-8292','juan@correo.com.cx');
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL on agendita.* TO bingo@localhost IDENTIFIED by 'holahola';
Query OK, 0 rows affected (0.06 sec)

Qué son los servlets

Un servlet es un programa en Java usado para extender las capacidades de un servidor cuyas
aplicaciones son accesadas vía un modelo petición-respuesta (request-response). A pesar de que un
servlet podría ser usado en cualquier servidor de este tipo, actualmente su uso se ha extendido
básicamente a las aplicaciones que se ejecutan bajo un servidor web. En este caso, los servlets se
ejecutan dentro del entorno del servidor web, y por lo tanto amplían la funcionalidad del mismo al
permitir la generación de páginas HTML de manera dinámica. Estos servlets reciben y responden a
peticiones de clientes web a través del protocolo HTTP, el Protocolo de Transferencia de Hypertexto.

Para que se puedan ejecutar los servlets es preciso tener un contenedor de servlets que trabaje en
conjunción con el servidor web. Este contenedor se encarga entre otras cosas de administrar la carga y
descarga de los servlets dentro del servidor web.

www.mysql-hispano.org

2 of 20

Aplicaciones web con Tomcat y MySQL en Linux

Nota: Es muy común usar el término servlet engine (algo así como "motor de servlets"), para referirse a
dicho contenedor.

Tomcat proporciona el contenedor de servlets necesario para el trabajo con los Java Servlets, y
además puede ser usado en conjunción con algunos otros servidores web, tales como Apache, sin
embargo, se recomienda en principio utilizar el propio servidor web que se incluye con Tomcat, ya que
es la forma más sencilla en la que se puede comenzar de inmediato a trabajar con Java Servlets y
JSPs.

Para la versión de Tomcat que se va a utilizar (4.1.27) se tiene soporte para las especificaciones Servlet
2.3 y JSP 1.2 propuestas por Sun Microsystems.

Preparación del ambiente de desarrollo

Se supone que se tiene ya instalado el Java 2 SDK, y que además se ha obtenido el driver JDBC para
MySQL, por lo tanto se indicará únicamente como instalar y configurar el servidor de aplicaciones
Tomcat. El procedimiento de instalación que explicaremos a continuación se basa en un sistema operativo
Linux RedHat 8.0, sin embargo, debe funcionar en cualquier otra distribución de Linux, incluso en algún
otro sistema Unix.

Como se mencionó anteriormente, se usará la versión 4.1.27 de Tomcat, la versión estable más reciente
al momento de escribir este artículo. El archivo correspondiente debe descargarse del sitio web de
Tomcat.

A continuación se resume el proceso de instalación:

» Obtener el archivo de distribución de Tomcat para Linux (jakarta-tomcat-4.1.27.tar.gz).

» Decomprimir y desempaquetar el archivo de distribución de Tomcat.

» De manera opcional, renombrar el directorio base de Tomcat.

[eduardo@casita]$ pwd
/home/eduardo

[eduardo@casita]$ ls -1F
jakarta-tomcat-4.1.12.tar.gz*

[eduardo@casita]$ tar zxf jakarta-tomcat-4.1.12.tar.gz

[eduardo@casita]$ ls -1F
jakarta-tomcat-4.1.12/
jakarta-tomcat-4.1.12.tar.gz*

[eduardo@casita]$ mv jakarta-tomcat-4.1.12 tomcat4.1.27

Al desempaquetar y descomprimir el archivo con el software de Tomcat, obtenemos una estructura de
directorios como la que se muestra en la siguiente figura. En ésta se resalta en color rojo el directorio
webapps sobre el que trabajaremos posteriormente.

www.mysql-hispano.org

3 of 20

Aplicaciones web con Tomcat y MySQL en Linux

A continuación se describe brevemente cada uno de estos directorios.

Directorio
bin/
common/
conf/
logs/
server/
shared/
temp/
webapps/
work/

Descripción
Incluye los archivos binarios y scripts de Tomcat.
Para clases disponibles tanto para Catalina como para las aplicaciones web.
Guarda los archivos de configuración.
Guarda los archivos de registros (logs).
Contiene clases para uso interno y exclusivo de Catalina.
Contiene clases compartidas por todas las aplicaciones web.
Guarda archivos temporales creados por la Máquina Virtual de Java.
Directorio base para las aplicaciones web.
Directorio de trabajo para archivos y directorios temporales usado por Tomcat.

El nombre de Catalina se refiere al contenedor de servlets en sí que se incluye con Tomcat.

En algunos de estos directorios se encuentran los subdirectorios classes y lib. En el primero se
colocan las clases "sueltas", sin empaquetar, y en el segundo se colocan clases empaquetadas en
archivo JAR
  • Links de descarga
http://lwp-l.com/pdf2765

Comentarios de: Aplicaciones web con Tomcat y MySQL en Linux (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad