Jonathan Jesús Martínez Rodríguez
Al iniciar este curso no tenían ni idea de lo bueno que iba a ser. Me ha parecido excelente y no me han quedado dudas acerca de lo aprendido. Ahora, sigamos con el reto.
¿Te animas a llevar todo lo aprendido a un proyecto real? El reto es construir un clon de Netflix en Java usando JDBC o JPA, conectando varias tablas relacionales y aplicando patrones de diseño como repository o DAO. Es ideal si quieres practicar conexiones a bases de datos, CRUDs y optimización con pool de conexiones en un caso cercano a la industria.
¿Cómo estructurar la base de datos del clon de Netflix?
La idea central es dejar atrás la tabla única y modelar una base de datos relacional con varias entidades que se comuniquen entre sí. Aquí cambia el juego: ya no trabajas con un CRUD plano, trabajas con relaciones.
Una propuesta de estructura incluye tres tablas principales:
Las películas se ligan tanto a categorías como a directores, así que tendrás que pensar en llaves foráneas y en cómo recuperar esa información cuando consultes. Si usas JPA, esto se traduce en anotaciones de relación; si vas con JDBC, en joins manuales dentro de tus consultas SQL.
¿Qué tablas necesito para clonar Netflix? Mínimo tres: Películas, Categorías y Directores. Películas funciona como tabla central que se relaciona con las otras dos mediante llaves foráneas.
¿Qué métodos del CRUD cambian en este proyecto?
Aquí viene lo interesante: no todos los métodos del CRUD aplican igual que en un proyecto genérico. Netflix no te deja insertar una película desde la app ni eliminarla, así que tu repositorio debe reflejar esa lógica de negocio.
Los métodos que sí tienen sentido implementar son los de búsqueda especializada:
En lugar de un findAll o un delete sin criterio, piensa en consultas que respondan a cómo realmente navega un usuario por un catálogo. Esto te obliga a escribir queries más ricas, ya sea con JPQL en JPA o con PreparedStatement en JDBC.
¿Puedo eliminar películas en este reto? No. La consigna es respetar la lógica de Netflix: el catálogo no se modifica desde el cliente, solo se consulta con filtros como director, categoría o clasificación.
¿Qué patrones y optimizaciones debes aplicar?
Durante el curso ya implementaste un CRUD usando el patrón repository, y también conociste el patrón DAO. Cualquiera de los dos te sirve para este reto, lo importante es que separes la lógica de acceso a datos del resto de tu aplicación.
Además, recuerda aplicar un pool de conexiones para optimizar recursos. En lugar de abrir y cerrar conexiones cada vez que consultas el catálogo, el pool reutiliza conexiones existentes, lo que reduce latencia y mejora el rendimiento cuando hay múltiples consultas seguidas.
Puedes implementar el reto con dos caminos:
La recomendación es que personalices el proyecto a tu gusto: cambia los campos, agrega tablas como Vistas para registrar reproducciones, o suma nuevos filtros de búsqueda. Comparte tu versión en los comentarios y compárala con la solución que encuentras en los recursos.
Ya sabes cómo conectar Java a una base de datos relacional con JDBC y JPA, cómo aplicar repository o DAO, y cómo optimizar con pool de conexiones. ¿Te gustaría que el siguiente paso sea un curso de API REST con Java? Cuéntamelo en los comentarios y no olvides presentar tu examen o proyecto para obtener tu certificado.
Jonathan Jesús Martínez Rodríguez
Al iniciar este curso no tenían ni idea de lo bueno que iba a ser. Me ha parecido excelente y no me han quedado dudas acerca de lo aprendido. Ahora, sigamos con el reto.
Gabriel Omar Gramajo
Mi proyecto
Joselyn Pariansullca
Apoyo la propuesta! Cursito de APIREST con JAVA! 😊👌
Milton Hernan Camacho Quitian
Comparto mi versión utilizando JPA:
Lautaro Casanueva
Si! estaria bueno un curso de API REST con JAVA
Jaime Manuel Cutipa Calderón
Me olvide, me sumo al curso de API REST CON JAVA
ANDRES ALFONSO MIRA MEJIA
✅
Yoexer Elias Moran Urcia
Agrego mi versión en JDBC
Rafael Camacho
Excelente curso, sobre todo mucha satisfaccion cuando ya logras hacer la conexion con hibernate, y tambien quiero un curso de API REST con Java
Jaime Manuel Cutipa Calderón
Excelente curso
Mauricio Julián Martinez
Apoyo la moción del curso de APIs REST con Java!!!
Paul Cortés Quijano
Que hay del curso de spring, desde mi perspectiva es muy bueno, para conocer spring boot y realizar api rest, usando incluso spring jpa
Ulises López Díaz
Apoyo la idea del curso de API REST con Java!!
Daniel Alessandro García Batres
¡Me encantó el curso! Aprendí muchas cosas útiles. 💚
Johnny Rodriguez
Bonito e intuitivo :)