Sei sulla pagina 1di 10

Tecnología de Programación

Sesión 6

Consulta de Base de Datos desde JSP

Antes de nada, unas pequeñas aclaraciones.

Lo que se cuenta aquí no es muy elegante, puesto que se va a mezclar todo el código java dentro de la página .jsp. Siempre es mejor tener separadas las cosas y hacer una serie de clases java a las que llamaremos desde .jsp. Sin embargo, simplemente por ver que es posible, accederemos desde el .jsp a la base de datos metiendo todo el código java dentro de la página.

Suponemos también que tengo en el mismo ordenador en el que corre GlassFish 4.x, que sirve nuestra página .jsp, un servidor de base de datos MS SQL SERVER 2012 corriendo. En este servidor hay una base de datos agenda, con una tabla contacto. La estructura de la tabla es la siguiente

tabla contacto . La estructura de la tabla es la siguiente También hay que tener, en

También hay que tener, en el directorio WEB-INF/lib el jar con el conector de base de datos. Para el ejemplo estoy usando MSSQL Server 2012, así que dentro de este directorio he metido el fichero sqljdbc4-2.0.jar, que contiene el conector de java con MSSQL Server. Como se muestra en la imagen:

el conector de java con MSSQL Server . Como se muestra en la imagen: Mgr. Ing.

Mgr. Ing. Victor Hugo Tapia Jacinto

P á g i n a

|

1

Tecnología de Programación

Sesión 6

Conexión a Base de datos

Creamos una nueva conexión en la pestaña de Prestaciones y haciendo anticlick sobre el objeto de base de datos. Luego seleccionamos Nueva conexión de base de datosComo se muestra en la siguiente figura:

base de datos … Como se muestra en la siguiente figura: En la ventana que se

En la ventana que se apertura seleccionamos en Driver &Nuevo Controladory aparece una nueva ventana.

&Nuevo Controlador … y aparece una nueva ventana. Luego agregamos el driver que hemos copiado a

Luego agregamos el driver que hemos copiado a nuestro proyecto en WEB-INF/lib, para luego Aceptar.

Al hacer click en siguiente llenaremos los datos correspondientes a la conexión con la base de datos (como referencia la imagen)

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 Al hacer click en siguiente deberemos seleccionar el esquema que en

Al hacer click en siguiente deberemos seleccionar el esquema que en nuestro caso será dbo. Esto permitirá mostrar todos los modelos al cual tiene acceso el usuario como dbo.

los modelos al cual tiene acceso el usuario como dbo . Por último se muestra la

Por último se muestra la url de conexión y se procede a finalizar el asistente de conexión.

Luego el modelo quedaría como se muestra a continuación

Luego el modelo quedaría como se muestra a continuación Mgr. Ing. Victor Hugo Tapia Jacinto P

Tecnología de Programación

Sesión 6

La página jsp

La página jsp es bastante tonta -si se sabe algo de base de datos con java-. Simplemente establece conexión con la base de datos y muestra el contenido de la tabla contacto. La página jsp puede ser como esta

de la tabla contacto . La página jsp puede ser como esta El siguiente es el

El siguiente es el código completo del archivo jsp

como esta El siguiente es el código completo del archivo jsp Mgr. Ing. Victor Hugo Tapia

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 Finalmente se muestra la ejecución del proyecto en la ventana siguiente:
Tecnología de Programación Sesión 6 Finalmente se muestra la ejecución del proyecto en la ventana siguiente:

Finalmente se muestra la ejecución del proyecto en la ventana siguiente:

muestra la ejecución del proyecto en la ventana siguiente: Nota : no olvidar que ya se

Nota: no olvidar que ya se está ejecutando a nivel de servidor, observar la dirección url que aparece en el navegador.

Tecnología de Programación

Sesión 6

Consulta de Base de Datos con JSP usando una Clase Java separada

Vimos en el ejemplo anterior que podíamos meter todo el código java dentro de una página jsp. En ese ejemplo hicimos una consulta a base de datos para mostrar en el navegador los resultados.

Vamos a hacer ahora el mismo ejemplo, pero llevándonos parte del código java que estaba dentro de la página jsp a una clase Java separada, de forma que desde jsp llamaremos a esa clase.

En el ejemplo anterior usábamos una base de datos MSSQL Server con una tabla así

una base de datos MSSQL Server con una tabla así Este modelo se puede gestionar (agregar

Este modelo se puede gestionar (agregar o editar atributos) desde el mismo entorno de netbeans. Añadir columna e ingresar los parámetros respectivos.

También podemos gestionar los datos utilizando el entorno SQL que soporta el Netbeans

los datos utilizando el entorno SQL que soporta el Netbeans La clase Contacto Nos hará falta

La clase Contacto

Nos hará falta una clase java para representar cada uno de los registros en la tabla anterior. Haremos una clase Contacto, con cuatro atributos, uno por campo, y los métodos get y set adecuados para cada campo. La clase puede ser así

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 Código de la clase Contactos dentro del paquete model. Consideramos la

Código de la clase Contactos dentro del paquete model. Consideramos la misma estructura que tiene la tabla en la base de datos incluyendo los mismos tipos de datos.

tabla en la base de datos incluyendo los mismos tipos de datos. Mgr. Ing. Victor Hugo

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 La clase de consultas a base de datos Para no complicarnos

La clase de consultas a base de datos

Para no complicarnos la vida, haremos una clase java con un único método estático que consulte a la base de datos y nos devuelva una lista de Contactos. Puede ser más o menos así

devuelva una lista de Contactos . Puede ser más o menos así Mgr. Ing. Victor Hugo

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 La página JSP Ahora sólo nos queda la página jsp .
Tecnología de Programación Sesión 6 La página JSP Ahora sólo nos queda la página jsp .

La página JSP

Ahora sólo nos queda la página jsp. En la página jsp debemos poner los import de nuestras dos clases Java y del LinkedList que nos devuelve la clase lstContactos.

Simplemente hacemos la consulta llamando a la Clase Contactos y luego hacemos un bucle para ir metiendo los resultados en un TABLE de html.

Tecnología de Programación

Sesión 6

Tecnología de Programación Sesión 6 Finalmente se muestra la ejecución del proyecto en la ventana siguiente:
Tecnología de Programación Sesión 6 Finalmente se muestra la ejecución del proyecto en la ventana siguiente:

Finalmente se muestra la ejecución del proyecto en la ventana siguiente:

se muestra la ejecución del proyecto en la ventana siguiente: Mgr. Ing. Victor Hugo Tapia Jacinto