Asociaciones de entidades JPA

Código
Intermedio
SpringBoot
Curso de SpringBoot
20 min
150 XP
Actualizado: 14/02/2025

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

El objetivo de este reto es evaluar tu capacidad para implementar una asociación ManyToOne bidireccional entre dos entidades en una aplicación de Spring Boot usando JPA.

Suponiendo que estamos en una tienda en línea, un Pedido (Order) puede contener múltiples Artículo (Item), pero cada Artículo pertenece a un solo Pedido. Tu tarea es modelar esta relación en código.

  1. Crea una nueva clase Order que represente un pedido en una tienda en línea.

    Guarda tu progreso

    Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

    Progreso guardado
    Asistente IA
    Ejercicios
    Iniciar sesión gratis

    Más de 25.000 desarrolladores ya confían en CertiDevs

  2. En la clase Order, define un campo List<Item> que represente los artículos incluidos en el pedido. Utiliza la anotación @OneToMany para establecer que cada pedido puede tener múltiples artículos.

  3. Crea una nueva clase Item que represente un artículo en un pedido.

  4. En la clase Item, añade un campo Order que represente el pedido al que pertenece este artículo. Utiliza la anotación @ManyToOne para establecer que cada artículo pertenece a un solo pedido.

  5. Designa un lado de la relación como el "lado propietario". Por lo general, esto se hace en el lado ManyToOne.

  6. Crea los métodos getter y setter para todos los campos en ambas clases.

Solución al ejercicio de programación en SpringBoot

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en SpringBoot para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en SpringBoot

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en SpringBoot

⭐⭐⭐⭐⭐
4.9/5 valoración