Você está na página 1de 16

Tecnologa de Programacin

V Ciclo

ACCESO A BASE DE DATOS CON JSP


Base de datos.Base de datos es una coleccin de datos organizados y estructurados, segn
un determinado modelo de informacin que refleja no slo los datos en s mismos, sino
tambin las relaciones que existen entre ellos, estas se han convertido en un elemento
indispensable para el funcionamiento de los grandes motores de bsqueda y
recuperacin de informacin a lo largo y ancho de la Web, adems para la creacin de
sedes web, Intranets y otros sistemas de informacin.
JSP.JSP es un lenguaje muy potente de cdigo abierto que permite crear de
manera fcil aplicaciones Web. JEE (Java Enterprise Edition) es una tecnologa de las
ms utilizadas. A veces se utiliza el trmino: servidores de aplicaciones Java para
referirse a aquellos servidores de aplicaciones que implementan de forma adecuada
las soluciones propuestas por JEE. JEE es una especificacin que propone un
estndar para servidores de aplicaciones. Define diferentes tecnologas e indica cmo
deben trabajar juntas.
Acceso a base de datos MySQL
El modelo de datos de java descansa en una serie de objetos especializados
que facilitan el procesamiento de una base de datos. El problema es comunicar un
programa o aplicacin con una base de datos y ms que comunicar se pretende que el
programa o aplicacin realice una serie de procesos u operaciones con la base de
datos o mejor aun con el conjunto de tablas que contiene una base de datos.
Es necesario conocer que as como existen servidores de paginas (web
server), servidores de correo (mail server), servidores de ftp (ftp server), etc, tambin
existen servidores de bases de datos (database server), los servidores de bases de
datos surgen con motivo de la necesidad de las empresas de manejar grandes y
complejos volmenes de datos, al tiempo que requieren compartir la informacin con
un conjunto de clientes (que pueden ser tanto aplicaciones como usuarios) de una
manera segura. Ante este enfoque, un sistema gestor de bases de datos (SGBD, a
partir de ahora) deber ofrecer soluciones de forma fiable, rentable y de alto
rendimiento. A estas tres caractersticas, le debemos aadir una ms: debe
proporcionar servicios de forma global y, en la medida de lo posible,
independientemente de la plataforma. Internet se ha convertido en nuestros das en la
mayor plataforma de comunicaciones jams vista. Esto hace que las empresas tiendan
a presentar su informacin a travs de la Web en forma de contenidos, que despus
los clientes consultarn para establecer relaciones con dichas empresas.
Una de las funciones que se empieza a exigir a los SGBD, puesto que sobre
ellos recae el peso del almacn y proceso de la informacin, es la de proporcionar
herramientas de apoyo a toma de decisiones ("datawarehouse") al tiempo que
proporciona una plataforma de transacciones "on-line" (OLTP) que hacen que la
informacin est siempre actualizada y consistente. Entre algunos de ellos tenemos:
SQL Server de microsoft, Oracle, MySQL, etc.
El modo de comunicarse entre nuestro programa o aplicacin y la base de
datos implica que ambos manejen un lenguaje de programacin comn, para resolver
este problema de comunicacin es que se usa un lenguaje comn de bases de datos
que tanto los lenguajes de programacin existentes como las bases de datos

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

entiendan, este lenguaje comn de bases de datos es el SQL (structured query


languaje) o lenguaje estructurado de consultas. Las principales instrucciones de SQL
que se utilizan son: s e l e c t , i n s e r t , u pd a t e y d e l e t e .
JDBC.JDBC o Java Data Base Connectivity, creado por la empresa Sun, es la API
estndar de acceso a bases de datos con Java. Sun opt por crear una nueva API en
lugar de utilizar ODBC, porque presentaba algunos problemas desde ciertas
aplicaciones Java. Adems, ODBC ha de instalarse manualmente en cada mquina,
mientras que los controladores (drivers) JDBC que estn escritos en Java son
automticamente instalables y portables. El nivel de abstraccin al que trabaja JDBC
es ms alto que el de ODBC, de esta forma se pueden crear libreras de ms alto
nivel. Se utiliza para ejecutar comandos de SQL, Suministra una serie de clases e
interfaces que permiten al desarrollador de sitios web escribir aplicaciones que
gestionen Bases de Datos. El acceso a base de datos desde JSP (Java Server
Pages), al igual que desde Servlets, se apoya en esta tecnologa, para ello se precisa
un controlador o driver que proporciona el acceso a la base de datos(MySQL).

Conector J para MySQL.- Es un objeto especializado que se utiliza para enlazar e


intercambiar informacin entre MySQL y Java. Este archivo .jar tenemos que ubicarlo
en el servidor.
Objeto Connection.- Objeto que se utiliza para establecer la conexin o enlace entre
el programa jsp y la base de datos en mysql.
Objeto ResultSet.- Es la representacin en memoria de las tablas de la base de datos
en disco, se puede entender como una tabla virtual, recordar que generalmente todos
los procesos que se realicen con la tabla (insertar registros, eliminar registros, etc) se
realizarn realmente contra un resulset y no provocarn ningn cambio en la tabla
fsica en disco.
Objeto Statement.- Este objeto y sus dos mtodos executeQuery(slo para select de
sql) y executeUpdate( solo para insert, update y delete de sql) son los mtodos que se
utilizan para comunicarse con la tabla fsica en disco.

CONSULTA
Existen una serie de operaciones y procesos que son muy comunes sobre una
tabla en una base de datos en disco, la ms comn es desplegar todos los renglones
de la tabla que estn almacenados en disco, a este proceso se le llama seleccin,
consulta o despliegue.
La comunicacin con la base de datos se tendr que realizar usando SQL(structured
query language), la instruccin sql que se usa para resolver este problema es:
select [campos] from tabla
INSERCIN
Insertar o agregar registros o renglones nuevos a una tabla en disco, es un
proceso sencillo que usa la siguiente instruccin sql:
insert into tabla(campo1,campo2..) values(valor1,valor2,...);

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

ACTUALIZACIN
Se tiene que usar la instruccin sql update para que la nueva informacin se
actualice en disco, cabe recordar que los cambios que se hacen a una tabla es
realmente al resultset, que a su vez es una tabla o base de datos en la memoria de la
mquina del cliente o usuario, es por esta razn que los cambios hay que actualizarlos
o pasarlos con UPDATE a la base de datos en disco.

ELIMINACIN
Eliminacin es otro proceso simple y comn con las bases de datos. La
instruccin sql que se usa es:
delete from tabla where condicin
y luego utilizar el executeUpdate()
Ejemplo 1.- (Consulta)
A continuacin veremos nuestro primer ejemplo, acerca de una consulta a una
tabla de una base de datos.
Vamos a crear la base de datos en MySQL, llamada bdempresa.
La tabla:
vendedor con 4 campos:
codvendedor

char(4)

nombre

varchar(50)

apellido

varchar(50)

nhijos

int(2)

La situacin ha sido adecuada para trabajar diferentes tipos de datos y realizar


su tratamiento desde la programacin.

Nos vamos a herramientas en la parte de inferior izquierda y seleccionamos


phpMyAdmin.

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

Luego ponemos nombre a nuestra base de datos y clic en botn


Create(Crear).

En la siguiente ventana el nombre a nuestra tabla y la cantidad de campos.

Se ingresa los nombres de los campos, conforma la imagen:

Hay que ingresar(insertar) algunos registros a la base de datos. Por ejemplo:

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

Ahora vamos a crear nuevo proyecto en NetBeans. En categories(Categoras)


se selecciona Java Web y en Projects Java Web.

Escribir el nombre que considere adecuado, en este caso es: EMPRESA.

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

En esta ventana seleccionar Server y Java EE Versin.

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

En la ventana de frameworks no activar las casillas, an. Luego


Finish(Finalizar).

Ahora se puede apreciar la plantilla, que corresponde a index que se crea en


forma predeterminada.

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

En index.jsp vamos a escribir el enlace a mostrar_vendedor.jsp, que en


realidad es el archivo donde vamos a escribir el cdigo.

Crear el archivo: mostrar_vendedor.jsp y escribir el cdigo como se muestra


en la imagen.

Para trabajar con base de datos se utiliza la siguiente importacin:


<%@page import="java.sql.*" %>

En estas lneas de cdigo est includa la conexin, la consulta, as


como la tabla(table) en la que se muestra el contenido de la tabla
vendedor de la base de datos bdempresa. La conexin es similar a
como se haca con archivos de extensin .java.

Es necesario agregar en Libraries, la librera:


MySQL JDBC Driver

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

Vamos a nuestro proyecto web EMPRESA, hacemos clic derecho y


Run(Ejecutar), que llama al index.jsp, que es donde est el enlace.

Luego

clic en el enlace Consulta vendedor,


mostrar_vendedor.jsp, que muestra lo siguiente:

que

llamar

Ejemplo 2.- (Insertar registros)


En el ejemplo anterior se realiz la conexin a una base de datos en el que, en
un solo archivo estaba todo el cdigo. En el siguiente ejemplo se realiza una

Ing. Ricardo More Reao

Tecnologa de Programacin

V Ciclo

separacin, se utilizan 3 archivos: el index, la conexin y en el que se realiza la


insercin.
Vamos a realizar una aplicacin web, que permita insertar registros a la tabla
trabajador de la base de datos bdservicios, que guarda usuario y contrasea.
Primero crearemos la base de datos:

Creamos el proyecto que tendr por nombre GUARDAR o el que se crea


conveniente. Como mencionamos ya, trabajaremos con 3 archivos.

En index.jsp(que se genera en forma predeterminada) se colocan dos enlaces.


El primero muestra la conexin a la base de datos y el segundo en el que se
procesa la insercin de un registro a la tabla trabajador.

En el archivo conexion.jsp, escribimos el cdigo de la imagen. Si desea puede


escribir el cdigo que aparece en el comentario o slo utilizar una sola lnea
como: <%@page import="java.sql.*"%>.

Ing. Ricardo More Reao

10

Tecnologa de Programacin

V Ciclo

En el archivo insertar.jsp, escribimos como se muestra en la imagen. Es


importante tener en cuenta que las cajas de texto que aparecen en el
formulario deben tener nombre(name) para poder pasarlos a las variables
String: user y cont, que son los valores(values) que se insertan a la tabla
trabajador.

Ing. Ricardo More Reao

11

Tecnologa de Programacin

V Ciclo

Vamos a nuestro proyecto web GUARDAR, hacemos clic derecho y


Run(Ejecutar), que llama al index.jsp, que es donde estn los enlaces.

Si hacemos clic en el primer enlace, se muestra el mensaje que se establece


conexin con la base de datos.

Si hacemos clic en el segundo enlace, se muestra el formulario para


guardar(debemos ir a conexion.jsp y borrar el mensaje de conexin
establecida):

Luego de hacer clic en el botn Guardar:

Ing. Ricardo More Reao

12

Tecnologa de Programacin

V Ciclo

Ejemplo 3.- (Guardar, Actualizar y Eliminar)

En el siguiente ejemplo vamos a realizar tres acciones: guardar, actualizar y


eliminar en la tabla libro de la base de datos llamada biblioteca, la debe
presentar la siguiente estructura.

Crear el nuevo proyecto: MANTENIENTO o el nombre que ustedes crean


conveniente. En l vamos a tener dos archivos .jsp. En index.jsp se encuentra
el formulario, en el cual aparecen los controles a utilizar y el action que
procesa est dirigido a mantenimiento.jsp. De igual forma en
Libraries(Librera) hay que agregar la librera MySQL JDBC Driver.

En mantenimiento.jsp, se muestra como rescatar los datos ingresados al


formulario, las variables asignadas para la conexin, el cdigo para guardar,

Ing. Ricardo More Reao

13

Tecnologa de Programacin

V Ciclo

eliminar y actualizar, la conexin y cerrar la conexin.

Contina...

Ing. Ricardo More Reao

14

Tecnologa de Programacin

V Ciclo

Contina ...

Luego hacemos clic derecho en nuestro proyecto y Run(Ejecutar).


Aparece el index.jsp con su contenido, el formulario.

Ingresamos valores.

Habilitamos la opcin Guardar y luego Aceptar.

Ing. Ricardo More Reao

15

Tecnologa de Programacin

Ing. Ricardo More Reao

V Ciclo

16

Você também pode gostar