martes, 30 de abril de 2024

08 2 Test de Junit5 en Springboot, para CineController

Utilizando Junit5 para preparar test de SpringBoot

Vamos a escribir un test para nuestro controlador; en él, no probaremos nuestro acceso a datos, si no únicamente el comportamiento de nuestro controlador, desde que recibe una llamada http, hasta que devuelve la respuesta al cliente. Utilizaremos Mockito para simular el acceso a BBDD y para hacer las llamadas HTTP

miércoles, 24 de abril de 2024

08 1 Test básico de Java para CineController


Presentación inicial de test. Realizamos un test de java básico a un programa Spring como introducción al test de spring que hacemos en el siguiente video. Presentación de Mockito y resolución de rutinas auxiliares

viernes, 19 de abril de 2024

06 Programando un poco mejor los Entity y DTO

Algo que a veces olvidamos es la necesidad de que los programas estén correctamente estructurados. Eso, que en principio parece un capricho de jefe carca, lo descubrimos como una necesidad en cuanto tenemos un poco de experiencia y empezamos a sufrir el trabajo de los demás. En este video, señalamos algunas diferencias notables entre el Entity y el DTO y vemos como aplicar las anotaciones de filtro.. si, incluso las que hayamos creado nosotros.

jueves, 18 de abril de 2024

05 Escribiendo un ControllerAdvice

No solo se trata de conseguir que nuestra app funcione bien, también es necesario que cuando haya un error, lo comuniquemos correctamente; ya sea al programador, o al usuario, y eso, en SpringBoot lo hacemos con un ControllerAdvice. En el video que acompaña, veréis como hacerlo, las ventajas que obtenemos, y la direccion de Github de donde podeis copiarlo....

miércoles, 17 de abril de 2024

00-Presentacion SpringBoot

Presentación de un proyecto para realizar pruebas. Se trata de un CRUD de cuatro tablas, hecho con SpringBoot, y pensado para realizar una serie de videos explicando como realizar test unitarios, o de integración, o como añadirle seguridad con SpringSecurity, mas adelante, podemos utilizarlo para ver Hateoas,   Graphql, o cualquier otro tema de Spring que sugerais

01 Inicio de Proyecto con SpringBoot

Creamos un proyecto de SpringBoot y escribimos el modulo de validacion


02 Test Unitarios en SpringBoot (I)


02 Test unitarios en SpringBoot 2. Uso de ParameterizedTest

Optimización de los test realizados en el video anterior, utilizando ParameterizedTest, y obteniendo datos desde un array, desde una lista CSV constante o en fichero, o por medio de un método

Mas informacion en : 


Programando en Visual Code con Copilot (AI)

Instalamos Copilot en Visual Code y vemos como se comporta y en que nos puede ayudar


03.1 Empezando con el Entity de Cine

Creación de un fichero de apoyo para mantener protegidos los datos de application.properties
Escritura de una interface para Modelo
Codificacion de la Entity Cine

Mas informacion en : 


03.2 Escribiendo repositorio, servicio y controller para "Cine"

Creamos una interface común para todos los servicios de JPA, y escribimos el codigo para el repositorio, el servicio y el controlador para el CRUD de Cine, comentando y explicando cada opción

Mas informacion en : 


03.3 Realización de pruebas con Postman

Realizamos pruebas de todo lo programado hasta ahora, y, como nuestra APP es una API, utilizamos  Postman.
Corregimos algun error existente en el codigo y añadimos el Update, que no habíamos incluido en el controlador.

Mas informacion en : 


04.1 Anotación de un filtro de DNI

Creamos una anotación que servirá para comprobar la letra y el formato del DNI

Mas informacion en : 

04.2 Anotaciones para filtro de existencia de Cine en tabla

Instalación de Copilot en Eclipse/STS

Instalamos Copilot en Eclipse/STS y vemos como se comporta y en que nos puede ayudar Mas informacion en https://recursosformacion.com/2024/04/usando-la-inteligencia-artificial-en-la-programacion/



04.3 Anotacion de un filtro de fecha

Creamos una anotacion que realiza una comprobacion de formato de fecha, y que la fecha sea posterior a hoy. Da mensajes de error distintos segun sea la incidencia Mas informacion en : https://recursosformacion.com/2023/10/vision-de-conjunto-con-spring/ https://recursosformacion.com/2024/01/creando-un-filtro-personalizado-de-fecha-con-mensaje-segun-error/ Repositorio: https://github.com/recursosformacion/SpringYouTube