Ejercicio 12€¦ · Ejercicio: Spring JDBCv1. Ejercicio 12. SPRING JDBC VERSIÓN1. Objetivo del...

Post on 26-Jun-2020

48 views 0 download

Transcript of Ejercicio 12€¦ · Ejercicio: Spring JDBCv1. Ejercicio 12. SPRING JDBC VERSIÓN1. Objetivo del...

Ejercicio: Spring JDBC v1

Ejercicio 12SPRING JDBC VERSIÓN 1

Objetivo del Ejercicio

•El objetivo del ejercicio es crear y configurar un proyecto Spring JDBC.

Al finalizar deberemos ver la siguiente salida:

Ejercicio: Spring JDBC v1

Creamos un nuevo proyecto Maven:

Paso 1. Crear un proyecto Maven

Ejercicio: Spring JDBC v1Paso 1. Crear un proyecto Maven (cont)

Filtramos los wizards y escribimos maven, seleccionando un nuevo proyecto Maven

Ejercicio: Spring JDBC v1Paso 1. Crear un proyecto Maven (cont)

Creamos un proyecto simple de Maven

Ejercicio: Spring JDBC v1Paso 1. Crear un proyecto Maven (cont)

Escribimos lossiguientes valores:

Ejercicio: Spring JDBC v1Paso 2. Configuración del Proyecto (cont)

Paso 3. Agregar librerías de Spring

Paso 4. Agregar el archivo log4j

Este archivo lo depositaremos ensrc/main/resourcesagregando el

siguiente contenido:

# 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

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

Ejercicio: Spring JDBC v1

Crear el archivo esquema.sql y depositarlo en src/main/resources:

Paso 5. Crear el archivo esquema.sql

Paso 5. Crear el archivo esquema.sql (cont)

Agregar el siguiente contenido al archivo llamado esquema.sql:

drop table if exists persona; CREATE TABLE `persona` (

`id_persona` bigint(20) NOT NULL,`nombre` varchar(50) NOT NULL,`apellido_paterno` varchar(50) NOT NULL,`apellido_materno` varchar(50) DEFAULT NULL,`email` varchar(50) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `persona`ADD PRIMARY KEY (`id_persona`);

Ejercicio: Spring JDBC v1Paso 6. Crear el archivo datos.sql

Crear el archivo datos.sql y depositarlo en src/main/resources:

Paso 6. Crear el archivo datos.sql (cont)

Agregar el siguiente contenido al archivo llamado datos.sql:

insert into persona (nombre, apellido_paterno, email) values ('Admin', 'admin', 'admin@upv.es');

insert into persona (nombre,apellido_paterno, email)values ('Juan', 'Perez', 'juan@gmail.com');

insert into persona(nombre,apellido_paterno,email)values ('Juan', 'Rodriguez', 'jrodriguez@gmail.com');

Paso 7. Creación del bean DataSource

Crear el archivo datasource-test.xml (es de tipo SpringBean Definitionfile) y depositarlo en src/test/resources :

Ejercicio: Spring JDBC v1Paso 7. Creación del bean DataSource (cont)Agregar los namespaces de beans y jdbc al archivo datasource-test.xml:

Paso 7. Creación del bean DataSource (cont)Agregar la definición del bean dataSource al archivo datasource-test.xml:

<bean name="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="driverClassName" value="com.mysql.jdbc.Driver" /><property name="url" value="jdbc:mysql://localhost:3306/springapp" /><property name="username" value="dbuser" /><property name="password" value="dbpass" />

</bean>

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"><constructor-arg ref="dataSource" />

</bean>

Ejercicio: Spring JDBC v1

Crear la clase JUnit llamada TestJdbc.java y agregar el siguiente código:

package test;import static org.junit.Assert.assertEquals;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory; import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.test.context.ContextConfiguration;import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations = {"classpath:datasource-test.xml"}) public class TestJdbc {

private static Log logger = LogFactory.getLog("TestJdbc");@AutowiredJdbcTemplate jdbcTemplate;@Testpublic void testJdbc() { logger.info("Inicio

del test Jdbc");int noPersonas = jdbcTemplate.queryForInt("select count(*) from persona"); logger.info("Numero de personas:" + noPersonas);assertEquals(3, noPersonas); logger.info("Fin del test Jdbc");

}}

Paso 8. Crear la clase TestJdbc.java

Ejercicio: Spring JDBC v1

• Ejecutamos la clase TestJdbc.java como una prueba de JUnit y observamos el siguiente resultado:

Paso 9: Ejecutar la Prueba