- 1

¿Qué es Spring y por qué es tan popular?
01:49 - 2

Configuración inicial de proyecto Spring Boot con Java 21
07:00 - 3

Crear un endpoint REST con Spring Boot e integrarlo con IA usando LangChain4j
07:29 - 4

Configuración de application.properties y perfiles en Spring Boot
12:23 - 5

Arquitectura por capas orientada al dominio en Java
04:35 quiz de Introducción a Spring Boot
Compilación de aplicación Java para producción con PostgreSQL
Clase 22 de 23 • Curso de Java Spring Boot
Contenido del curso
- 6

Conexión de Spring Boot con PostgreSQL usando Docker
10:36 - 7

Crear entidad con anotaciones JPA para tabla de base de datos
09:30 - 8

Repositorios CRUD con Spring Data sin escribir SQL
07:43 - 9

Creación de endpoints GET en Spring Boot para consultar películas
04:29 quiz de Persistencia con Spring Data y modelado de datos
- 10

Inyección de dependencias y contenedor IoC en Spring Boot
04:23 - 11

Separación de dominio y persistencia con DTOs en Java
08:55 - 12

Configuración de MapStruct con Spring para convertir entidades a DTO
09:26 - 13

Creación de conversores personalizados en MapStruct para enums y strings
10:01 - 14

Captura de parámetros con @PathVariable en Spring Boot
07:21 - 15

Códigos HTTP y Response Entity en APIs REST
06:52 quiz de Buenas prácticas en diseño de APIs
- 16

Crear endpoint POST para guardar películas en Spring Boot
10:20 - 17

Creación de endpoint PUT para actualizar películas en base de datos
11:50 - 18

Sistema de recomendaciones de películas con IA en Java
11:11 - 19

Control de excepciones con @RestControllerAdvice en Spring Boot
09:38 - 20

Validación automática de datos en APIs con Spring Boot
12:34 - 21

Documentación automática de APIs con OpenAPI en Spring Boot
10:52 - 22

Compilación de aplicación Java para producción con PostgreSQL
10:21 - 23

Despliegue de API Java con Docker en Render
10:20
Preparar y desplegar tu API en un entorno real demanda atención especial a cada detalle técnico. Conectar tu aplicación Java a una base de datos en la nube y empacar el proyecto para producción permite que las pruebas sean precisas y el funcionamiento sea similar al despliegue final. Aquí, verás los pasos para lograrlo usando Render y PostgreSQL, recursos esenciales para cualquier desarrollador comprometido con aplicaciones modernas y escalables.
¿Cómo se crea la base de datos PostgreSQL gratis en Render?
Render facilita crear una base de datos PostgreSQL dedicada en la nube. Primero, selecciona la opción de nueva base de datos desde el dashboard de Render. Debes definir:
- Nombre de la instancia: Por ejemplo, platzi_play_db.
- Usuario y región: Ajusta según tus preferencias, como "Alejandro" y Oregón.
- Versión: Escoge la más reciente, aquí la 16.
- Plan gratuito: Permite hasta 1GB de almacenamiento y caduca en 30 días.
Recuerda que solo se puede tener una base gratuita por cuenta. Eligiendo Render, puedes testear en producción sin costos adicionales en la etapa inicial.
¿Qué datos de conexión se utilizan para vincular la app con la base de datos?
Al terminar la creación, Render muestra la información de conexión:
- Usuario, contraseña y nombre de base de datos: Específicos para tu instancia.
- Puerto y URLs: Existen versiones interna y externa; normalmente se usa la externa para desarrollo.
- Formato JDBC: La cadena debe adaptarse conforme a las propiedades requeridas por tu app Java.
La cadena se añade en el archivo de propiedades de producción (por ejemplo, application-prod.properties) y se ajusta el usuario, contraseña y dirección del servidor, reemplazando el clásico localhost por el dominio de Render.
¿Cómo se configura la app para funcionar en modo producción?
En el proyecto Java:
- En el archivo de propiedades, copia la URL y credenciales de la base de datos proporcionadas por Render.
- Elimina configuraciones innecesarias que solo atrasarían la operación en producción, como logs excesivos.
- Establece los perfiles activos para distinguir entre desarrollo y producción, usando la variable
spring.profiles.active=producción. - Actualiza el archivo
build.gradlepara asignar la versión final de la app.
¿Qué pasos se siguen para compilar y ejecutar el JAR en ambiente productivo?
Con la configuración lista, procede así:
- Sincroniza Gradle y ejecuta la tarea bootJar para empaquetar la app en un archivo JAR listo para producción.
- Dirígete a la carpeta
/build/libs/, donde estará el archivo generado, por ejemplo:platzi-play-1.0.0.jar. - Antes de ejecutar, valida que Java versión 21 esté instalada usando el comando
java -version. - Lanza la app con el comando:
java -Dspring.profiles.active=producción -jar platzi-play-1.0.0.jar
Esto conecta tu servicio a la nueva base de datos, activa el puerto designado (8080 para producción) y lo deja listo para recibir peticiones.
¿Cómo se validan los datos y resultados en la base en la nube?
Ingresa a localhost:8080/platzi-play/api/movies para consultar los datos a través de la API. Si la base recién fue creada, al principio estará vacía. Para inicializarla con información:
- Añade la configuración que permite cargar los datos del archivo
data.sqldurante el despliegue. - Detén la app, recompila el JAR con el ajuste y vuelve a ejecutar el servicio.
Así, los registros estarán disponibles y podrás operar con la API como en desarrollo, pero en configuración productiva y conectada a la nube.
¿Te gustaría compartir cómo fue tu experiencia vinculando una app a una base de datos en la nube? Cuéntanos en los comentarios.