Java EE 6. Conectar Eclipse con MySQL

Configurar JPA

Clic con el botón derecho sobre el proyecto y seleccionar Propiedades. Clic en Project Facets. Asegurarse que este habilitado JPA y tiene seleccionado la versión 2.1.

Selección_154

Conectar con MySQL

En la misma ventana de propiedades, seleccionar JPA y en la sección de Connection clic en Add connection..
Selección_153
Seleccionar MySQL, elegir un nombre para la conección y clic en Next >.

Selección_155
Clic en el icono New Driver Definition.

Selección_156Elegir el driver 5.1.

Selección_157

Pasarse a la pestaña JAR List, seleccionar el driver mysql-connector-java-5.1.0-bin.jar y clic en Remove JAR/Zip para eliminarlo.

Selección_158
Clic en Add JAR/Zip... Ir a la ruta …/developer/db y seleccionar el archivo mysql-connector-java-5.1.38.jar (Se descargo el jar en el articulo https://arieloliva.com/configurar_proyecto/ en la sección «Dependencia para MySQL»). Clic en OK.

Selección_159
Escribir los datos de la Base de Datos MySQL.

Database mydb
URL jdbc:mysql://localhost:3306/mydb
User name root
Password El seleccionado en la instalación

Selección_160

Clic en Test Connection para validar que la conección es correcta.

Selección_161
Clic en Next > y  en Finish.

Validar la conección a MySQL

Sobre Eclipse en la pestaña Data Source Explorer se muestra la conección recién creada. Clic con el botón derecho y Connect.

Selección_163

Introducir la contraseña y OK.

Selección_164
Podemos ver las tablas de la Base de Datos de MySQL.

Selección_165

Java EE 5. Crear Base de Datos MySQL

Vamos a crear una Base de Datos muy sencilla para continuar con el desarrollo JEE.

Crear modelo en MySQL Workbench

Abrimos MySQL Workbench y seleccionamos la instancia local.

Selección_153

Pedirá la contraseña que seleccionamos en la instalación pasada.

Selección_154

En la pantalla principal ir a File -> New Model.

Selección_155

Doble Clic en Add Diagram.

Selección_156

Crear las tablas y sus relaciones

Aquí ya podemos agregar las tablas de la Base de Datos. Damos clic en Place a New Table. y con otro clic sobre el espacio de trabajo se creara la tabla.

Selección_175

Doble clic en la tabla y se mostraran su propiedades en la parte inferior. Seleccionamos el nombre Usuarios.

Selección_159

Y en la pestaña Columns agregamos los campos id, user y password.

Nombre Tipo de dato Clave primaria No acepta null
id INT Si Si
user VARCHAR(10) No No
password VARCHAR(10) No No

Selección_164

Ahora creamos la tabla Logins_users.

Nombre Tipo de dato Clave primaria No acepta null
id INT Si Si
date DATETIME No No
status VARCHAR(5) No No

Selección_166

Relacionamos la tablas de 1 a muchos. Damos clic en Place a New 1:n Non-Identifying.

Selección_167

Clic en la tabla Logins_users y finalmente clic en la tabla Users.

Selección_168

Generar Base de Datos

Ya tenemos nuestro modelo ahora vamos a crear la Base de Datos; Database -> Forward Engineer… Seleccionamos la instancia Local y la contraseña. Clic en Next.

Selección_169

Todo predeterminado y clic en Next.

Selección_170

Debe estar habilitado Export MySQL Table Object. Clic en Next.

Selección_171

Se muestra el script de creación. Clic en Next.

Selección_172

Clic en Close.

Selección_173

Desde la pestaña de la instancia seleccionamos el esquema mydb  y ejecutamos los querys:

select * from Users;
select * from Logins_users;

En la parte inferior se debe mostrar que las consultas fueron exitosas, indicando que las tablas ya existen.

Selección_174

 

Java EE 4. Configurar Proyecto

Archivo pom.xml

El archivo pom (Project Object Model) es la unidas principal de un proyecto Maven que contiene información acerca del proyecto, fuentes, test, dependencias, plugins, version, etc.

Cambiar archivo pom.xml la versión más actual

Abrir el archivo en eclipse e ir a la sección build. Lo valores de source y target se deben cambiar a 1.8.

pom

El proyecto marcara un error.

Clic con el botón derecho en el proyecto seleccionar Properties y luego Project Facets. la opción Java debe estar habilitada con la versión 1.8. Apply y OK.

pom2

Clic con el botón derecho en el proyecto seleccionar Maven y luego Update Project… Seleccionar el proyecto y OK.

pom3

El error en el proyecto desaparece.

En la sección de dependencias se muestra:

Selección_121

Vamos a actualizar a las versiones más recientes de los componentes web:

Dependencia para javax.servlet

Ir al link http://mvnrepository.com/ el cual es el repositorio oficial de Maven. Escribir javax.servlet y Search. Se muestran las coincidencias, seleccionar Java Servlet API.

Selección_122

Lo recomendable es elegir el release mas reciente. Clic en 3.1.0.

Selección_123

Muestra la dependencia correspondiente en la sección de Maven. Remplazamos la dependencia en el archivo pom.xml.

Selección_124

Dependencia para javax.servlet.jsp

En el repositorio de Maven buscar javax.servlet.jsp y seleccionar JavaServlet  Pages(TM) API. La ultima versión disponible es la 2.2.

Selección_127

Copiar la dependencia y reemplazarla en pom.xml. El resultado es:

Selección_128

Actualizar descriptor de despliegue

Abrir el archivo web.xml que se encuentra en la ruta nombreDelProyecto/scr/main/webapp/WEB-INF/ dentro del proyecto. La rama <web-app> la reemplazamos por:

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
		 http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">

Selección_129

Activar Dynamic Web Module

Con esta opción cuando creamos un servlet no se agregan en el descriptor de despliegue (web.xml) y podemos utilizar las anotaciones. Clic derecho en el proyecto -> Properties -> Project Facets -> Dynamic Web Module.

Selección_130

Dependencia para JPA

Desde el repositorio de Maven buscar eclipseLink, seleccionar EclipseLink JPA. Seleccionar el ultimo release, que es 2.6.2. y agregarlo al archivo pom.xml en la sección de dependencies.

Selección_133

Dependencia para EJB

Desde el repositorio de Maven buscar javax.ejb, seleccionar  Ejb Api. Seleccionar el ultimo release, que es 3.0. y agregarlo al archivo pom.xml en la sección de dependencies.

Selección_136

Dependencia para MySQL

Desde el repositorio de Maven buscar mysql, seleccionar MySQL Connector/J. Seleccionar el ultimo release, que es 5.1.38. y agregarlo al archivo pom.xml en la sección de dependencies.

También descargar el jar y copiarlo en ../developer/deb/. El link esta en Artifact y se llama Download( JAR).

Selección_139

Dependencia para Validator

Permite agregar validaciones en los entitys.

Desde el repositorio de Maven buscar bean validator, seleccionar Bean validator API. Seleccionar el ultimo release, que es 1.1.0.Final. y agregarlo al archivo pom.xml en la sección de dependencies.

Selección_142

Dependencia para jstl

Para evitar usar Scriplets en el proyecto.

Desde el repositorio de Maven buscar jstl, seleccionar Jstl. Seleccionar el ultimo release, que es 1.2. y agregarlo al archivo pom.xml en la sección de dependencies.

Selección_145

Probar que todavía funciona el proyecto

Después de configurar el proyecto se debe validar que sigue funcionando.

  1. Clic derecho sobre el proyecto Run As -> 1. Run On Server
  2. Seleccionamos GlassFish. Clic en Next.
  3. Pasamos el proyecto a la ventana de Configured y clic en Finish.
  4. Se muestra la ventana de «hola mundo», lo cual indica que el proyecto se ejecuto correctamente.

Selección_146