Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma...

22
Ejercicio: Concurso Talentos v1 Ejercicio PROYECTO CONCURSO DE TALENTOSV1 1

Transcript of Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma...

Page 1: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1

EjercicioPROYECTO CONCURSO DE TALENTOS V1

1

Page 2: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Objetivo del Ejercicio

El objetivo del ejercicio crear el proyecto Concursode Talentos.Al finalizar deberemos observar la siguiente salida:

2

Page 3: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1

Crearemos un proyecto que contenga las siguientes clases:

Proyecto Concurso Talentos

3

Page 4: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1

Creamos un nuevo proyecto Maven:

Paso 1. Crear un proyecto Maven

4

Page 5: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1Paso 1. Crear un proyecto Maven (cont)

Creamos un proyecto simple de Maven

5

Page 6: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1Paso 1. Crear un proyecto Maven (cont)

Escribimos los valores por siguientes:

6

Page 7: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Indicamos que no excluya ningún archivo en resources:

Paso 2. Configuración del Proyecto (cont)

7

Page 8: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 2: Configuración del proyecto (cont)

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion><groupId>es.upv.lemus</groupId><artifactId>spring-concurso-talentos-01</artifactId><version>0.0.1-SNAPSHOT</version><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties>

</project>

Agregamos las propiedades que indican la versión jdk

8

Page 9: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1Paso 3. Agregar librerías de Spring

De la misma manera que en los ejercicios anteriores, abrimos elarchivo pom.xml y agregamos las siguientes librerías a nuestroproyecto:• spring-core• spring-context-support• spring-test• junit• log4jEn automático al guardar el archivo de pom.xml descargará laslibrerías y dependencias necesarias para el proyecto.

9

Page 10: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 4. Agregar el archivo log4j

Crear el archivo para el manejo de logging llamado log4j.properties

Este archivo lo depositaremos en src/main/resources

10

Page 11: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

# Set root logger level to DEBUG and its only appender to A1. log4j.rootLogger=INFO, A1

# A1 is set to be a ConsoleAppender. log4j.appender.A1=org.apache.log4j.ConsoleAppender

# A1 uses PatternLayout. log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x -%m%n

Modificar el fichero log4j.properties para que tenga el siguiente contenido:

Paso 4. Agregar el archivo log4j (cont.)

11

Page 12: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 5. Crear la clase EjecucionException

Nota: Esta clase se utiliza para indicar cualquier excepción, sin embargo no es parte de las clases de dominio de este proyecto.

package concursantes;

public class ExecutionException extends RuntimeException {public ExecutionException() {}

public ExecutionException(String msg) {super(msg);

}}

Crear la clase EjecucionException.java y agregar el siguiente código.

12

Page 13: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 6. Crear Interfaz Concursante

package concursantes;

public interface Concursante {public void ejecutar()

throws ExecutionException;}

Crear la Interfaz Concursante.java y agregar el siguiente código:

13

Page 14: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 7. Crear la clase Malabarista

Crear la clase Malabarista.java yagregar el siguientecódigo:

package concursantes;public class Malabarista implements Concursante {private int pelotas = 5;

public Malabarista() {}public Malabarista(int pelotas) {this.pelotas = pelotas;

}public void ejecutar() throws

ExecutionException {System.out.println("Malabareo " + pelotas + " pelotas");

}public int getPelotas() {return pelotas;

}public void setPelotas(int pelotas) {this.pelotas = pelotas;

}}

14

Page 15: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1

A continuación vamos a crear el archivo applicationContext.xml

Paso 8. Creación archivo applicationContext.xml

15

Page 16: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1Paso 8. Creación archivo applicationContext.xml

Seleccionamos el namespace de beans

16

Page 17: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 9. Configuración archivoapplicationContext.xml

Agregamos la definición de los siguientes beans dentro del tag de<beans>

<!-- Codigo equivalente en Java:Malabarista concursante1 = new Malabarista(); --><bean id="solei" class="concursantes.Malabarista" />

17

Page 18: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 10. Creamos la Clase PruebaConcursoTalento

deAgregamos el código siguiente a la clasePruebaConcursoTalento.java:

package concursantes;

import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import concursantes.Concursante;

public class PruebaConcursoTalento {

public static void main(String[] args) {ApplicationContext ctx = new

ClassPathXmlApplicationContext("applicationContext.xml");

Concursante malabarista1 = (Concursante) ctx.getBean("solei");malabarista1.ejecutar();

}}

18

Page 19: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 11. Ejecutamos el proyecto

Ejecutamos el proyecto y deberemos ver la siguiente salida:

Podemos observar la salida al ejecutar el método ejecutar a través de lainterfaz Concursante, apuntando a un objeto de tipo Malabarista.

19

Page 20: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Paso 12. Creamos un Test de JUnitCreamos el siguiente test de Junit (crear en carpeta test)

package test;import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; importorg.junit.Before;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext; import static org.junit.Assert.assertEquals;

import concursantes.Concursante; importconcursantes.Malabarista;

public class TestConcursoTalentos {

private static Log logger = LogFactory.getLog("TestConcursoTalentos"); private Concursante malabarista1;

@Beforepublic void before() {

ApplicationContext ctx = new ClassPathXmlApplicationContext( "applicationContext.xml");

malabarista1 = (Concursante) ctx.getBean("solei");}

@Testpublic void testMalabarista() { logger.info("Inicio de

ejecutar Malabarista");

int noPelotas = 5; malabarista1.ejecutar();assertEquals(noPelotas, ((Malabarista) malabarista1).getPelotas());

logger.info("Fin de Ejecutar Malabarista");}

}

20

Page 21: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Ejercicio: Concurso Talentos v1

Ejecutar la clase pero como Test de Junit, y obteniendo la siguiente salida:

Paso 13. Ejecutar el Test

21

Page 22: Ejercicio · Paso 3. Agregar librerías de Spring. Ejercicio: Concurso Talentosv1. De la misma manera que en los ejercicios anteriores, abrimos el archivo pom.xml y agregamos las

Referencias:

Junit: http://code.google.com/p/t2framework/wiki/JUnitQuickTutorial

Log4J: http://logging.apache.org/log4j/1.2/manual.html

22