j2ee_jsf(Ejemplo Con Base de Datos)

of 27

  • date post

    10-Oct-2015
  • Category

    Documents

  • view

    18
  • download

    0

Embed Size (px)

description

j2ee_jsf(EJEMPLO CON BASE DE DATOS).pdf

Transcript of j2ee_jsf(Ejemplo Con Base de Datos)

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 1

    Creando una Aplicacin J2EE con JSF y Base de Datos en NetBeans 5.5

    Autor: Wilder Lpez Melndez1 wlopezm@yahoo.com

    Fecha: 28 de junio de 2007

    I.- Introduccin

    Como analistas y programadores vamos desarrollando a diario nuestras habilidades para resolver problemas usuales que se presentan en el desarrollo del software. Por cada problema que se nos presenta pensamos distintas formas de resolverlo, incluyendo soluciones exitosas que ya hemos usado anteriormente en problemas similares. Es as que a mayor experiencia que tengamos, nuestro abanico de posibilidades para resolver un problema crece, pero al final siempre habr una sola solucin que mejor se adapte a nuestra aplicacin.

    Por lo tanto, los patrones de diseo son soluciones exitosas a problemas comunes. Existen muchas formas de implementar patrones de diseo. Los detalles de las implementaciones son llamadas estrategias, es decir soluciones tpicas de desarrollo. Hay patrones que abarcan las distintas etapas del desarrollo; desde el anlisis hasta el diseo y desde la arquitectura hasta la implementacin.

    Un patrn es una solucin comprobada para un problema en un contexto, cuanto ms amplio sea el contexto, ms amplio ser el campo de aplicacin del patrn, en trminos de software, los patrones son esencialmente la destilacin de la sabidura obtenida por especialistas sobre lo que funciona bien a la hora de especificar, disear e implementar software.

    (GoF, que en espaol es la pandilla de los cuatro) desde luego que ellos no son los inventores ni los nicos involucrados, pero ese fue luego de la publicacin de ese libro que empez a difundirse con ms fuerza la idea de patrones de diseo. El grupo de GoF clasificaron los patrones en 3 grandes categoras basadas en su propsito:

    Creacionales: Patrones creacionales tratan con las formas de crear instancias de objetos. El objetivo de estos patrones es de abstraer el proceso de instanciacin y ocultar los detalles de cmo los objetos son creados o inicializados.

    Estructurales: Los patrones estructurales describen como las clases y objetos pueden ser combinados para formar grandes estructuras y proporcionar nuevas funcionalidades. Estos objetos adicionados pueden ser incluso objetos simples u objetos compuestos.

    Comportamiento: Los patrones de comportamiento nos ayudan a definir la comunicacin e iteracin entre los objetos de un sistema. El propsito de este patrn es reducir el acoplamiento entre los objetos.

    La arquitectura Modelo-Vista-Controlador es un patrn de diseo clsico que es muy usado en aplicaciones que requieren la habilidad de mantener mltiples vistas del mismo dato; es decir, se usa para administrar la informacin y notificar algn cambio en la misma, por lo que su funcionalidad est dirigida a un propsito comn.

    Utilizando este tipo de patrones conseguimos: ms calidad, mejor mantenibilidad, perder el miedo a empezar un proyecto desde cero, pero una de las cosas ms importantes es la normalizacin y estandarizacin del desarrollo de Software.

    En este artculo vamos a ver un framework de desarrollo que sigue el patrn MVC. Los frameworks son muy tiles ya que nos permiten no tener que reinventar la rueda cada vez. Es decir el framework no slo sigue el patrn, sino que me da unas directrices de trabajo, y nos da gran parte del trabajo ya hecho.

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 2

    JSF (Java Server Faces) es un framework de desarrollo basado en el patrn MVC (Modelo Vista Controlador). Al igual que Struts, JSF pretende normalizar y estandarizar el desarrollo de aplicaciones web. Hay que tener en cuenta JSF es posterior a Struts, y por lo tanto se a nutrido de la experiencia de este, mejorando algunas sus deficiencias. De hecho el creador de Struts (Craig R. McClanahan) tambin es lder de la especificacin de JSF.

    Vamos a crear una aplicacin tpica de mantenimiento de dos tablas relacionadas que me permitan Crear un nuevo registro, modificarlo, eliminarlo y mostrar en una lista los registros de las tablas.

    Debo mencionar que realizar este tipo de aplicacin por ms sencilla que parezca sin utilizar un framework demanda mucho tiempo su realizacin, obviamente respetando todas las reglas del Patrn MVC, es decir crear una clase que me permita manejar la Base de Datos (Modelo), crear un servlets (controlador) para controlar todas las transacciones, y finalmente los JSPs (Vistas) que me permitirn mostrar los datos al usuario en formato HTML, en el rea de Desarrollo donde trabajo, desarrollamos estos tipos de aplicaciones, bajo este esquema.

    II. Desarrollo de la aplicacin JSF

    Primero empezaremos definiendo nuestra Base de Datos que ser como sigue:

    Aqu observamos la relacin de las tablas facultad a escuela, una facultad puede tener una o muchas escuelas, esto lo vemos por que el campo (PK) Facultad.idfacultad a migrado a la tabla Escuela.idfacultad como (FK).

    Despus de descargar el NetBeans 5.5 desde http://www.netbeans.org vamos a crear un nuevo proyecto

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 3

    Elegimos una aplicacin Web (Web Application)

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 4

    Elegimos el nombre el directorio de trabajo del NetBeans, esto para mi es fundamental, siempre insisto con mis alumnos a prestar atencin a ese cuadro de dialogo, por que aqu defino donde se guardar mi proyecto.

    Elegimos soporte para trabajar con el FrameWork JavaServer Faces - JSF

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 5

    Ahora tendremos un entorno de trabajo de JSF, por defecto nos proporciona dos JSP

    Vamos a conectarnos a la base de datos donde se encuentran nuestras tablas Facultad y Escuela.

    2.1. Conexin a la Base Datos en Forma Nativa

    Para ello debemos utilizar los drives del motor de base de datos del que se esta utilizando, para este ejemplo estamos utilizando SQL Server 2000, tengo los drivers en una carpeta, y es necesario primero copiarlos a la carpeta src en la carpeta donde se esta grabando nuestro proyecto. Para nuestro caso la ruta exacta es:

    D:\DataWLM\Proyectos\Articulos\webJSF\src\java

    Copiar la carpeta lib, a este lugar

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 6

    Comprobamos si el paquete lib ya se muestra en nuestro proyecto.

    Aadimos los .Jar al paquete Libraries, pulsando clic derecho sobre el paquete y seleccionando la opcin Add JAR/Flder

    Seleccionamos la carpeta donde esta la carpeta lib que copiamos en el prrafo anterior y empezamos a aadir uno a uno los componentes mbase.jar, mssqlserver.jar, msutil.jar, sqljdb.jar

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 7

    Finalmente debemos tener en el paquete Libraries todos los componentes aadidos.

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 8

    Como ya tenemos los componentes para poder conectarse con el motor de Base de Datos, pasemos hacer justamente eso. Para ello pulsamos clic en Runtime, Databases

    Primero debemos crear el Driver, clic derecho New Driver, luego pulsamos clic en Add y aadiremos el Jar mssqlserver.jar

    Ahora ya tenemos conectado el driver SQL Server 2000, pulsamos clic derecho Connect Using, en esta ventana tenemos que colocar el servidor el puerto y la base de datos jdbc:microsoft:sqlserver://:[;DatabaseName=], en nuestro caso vamos a utilizar lo siguiente: jdbc:microsoft:sqlserver://localhost:1432;DatabaseName=demo. Usuario y clave sa

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 9

    Cambiamos el HOST, PORT y DB

    2.2. Conexin a la Base Datos Por medio del ODBC

    Tambin pueden conectarse a la Base de Datos por medio del Windows con ODBC, con esta opcin no necesitas tener los drivers del motor de la Base Datos, el Sistema Operativo se encarga de hacer un puente entre el JDBC de java el Motor de BD. Seguramente te estars preguntando cual de las dos opciones es la ms adecuada y la ms rpida?. La respuesta es, la primera opcin, conectarse por medio de los Drivers que es la forma Nativa del JDBC. ODBC lo utilizamos con fines acadmicos, aparte de que esta amarrado al S.O Windows.

    Para crear un ODBC debemos entrar al Panel de Control de Windows y seleccionar la opcin Herramientas Administrativas Orgenes de datos (ODBC)

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 10

    En esta cuadro de dialogo debemos agregar un origen de datos de usuario, pulsando clic en el botn Agregar.

    Seleccionamos el motor de base datos en nuestro caso SQL Server.

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 11

    Ahora colocamos un nombre y seleccionamos la base de datos, de nombre pondremos dbDemo, y como servidor (local) con esto levantamos la BD instalado en forma local.

    Configuramos el modo de autentificacin de la base de datos puedes probar con las dos opciones autentificacin de Windows o la autentificacin de Sql Server, estas autentificaciones depende de cmo configuraste el SQL Server, en mi caso seleccionar la primera opcin.

    Seleccionamos la base de datos con la que trabajar, aqu seleccionamos la BD Demo.

  • Java Server Faces (JSF) NetBeans 5.5

    Copyright Wilder Lpez M. 12

    Pulsamos clic en Finalizar y con esto ya tenemos creado nuestro DSN de usuario

    Pulse clic en el botn probar origen de datos, si muestra la ventana de resultados de pruebas el mensaje PRUEBAS COMPLETAMENTE CORRECTAMENTE, todo fue exitoso. Pul