Consultas JPQL básicas

Código
Básico
Hibernate
Curso de Hibernate
10 min
150 XP
Actualizado: 14/02/2025

¡Programa y certifícate!

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

Descripción

Este reto pondrá a prueba tu conocimiento de consultas básicas con JPQL, requiriendo el uso de SELECT, WHERE y ORDER BY, así como saber recuperar campos concretos en las consultas de entidades.

Estás trabajando con una base de datos que gestiona una librería. Existe una entidad llamada Libro ya creada que contiene información sobre diferentes libros. Esta entidad tiene los siguientes campos:

  • id: Un número único que identifica cada libro (tipo Long).
  • titulo: El título del libro (tipo String).
  • autor: El autor del libro (tipo String).
  • anioPublicacion: El año en que el libro fue publicado (tipo Integer).
  • precio: El precio del libro (tipo Double).

Crear un archivo LibreriaConsultas.java que realice las siguientes operaciones utilizando JPQL y un EntityManager:

  1. Obtener todos los libros de un autor específico.
  2. Encontrar todos los libros publicados antes del año 2000, ordenados por año de publicación de manera ascendente.
  3. Obtener el título y precio de todos los libros, ordenados por precio de manera descendente.

Las consultas deben ser realizadas utilizando JPQL. Asume que el EntityManager ya está configurado para poder llamar entityManager.createQuery directamente.

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

Puedes utilizar la siguiente plantilla como base:

import jakarta.persistence.EntityManager;
import jakarta.persistence.Query;
import java.util.List;

public class LibreriaConsultas {

    private EntityManager entityManager;

    public LibreriaConsultas(EntityManager entityManager) {
        this.entityManager = entityManager;
    }

    // Consulta 1: Obtener todos los libros de un autor específico
    public List<Libro> obtenerLibrosPorAutor(String autor) {
        
    }

    // Consulta 2: Encontrar todos los libros publicados antes del año 2000, ordenados por año de publicación de manera ascendente
    public List<Libro> encontrarLibrosAntesDe2000() {
        
    }

    // Consulta 3: Obtener el título y precio de todos los libros, ordenados por precio de manera descendente
    public List<Object[]> obtenerTituloYPrecioDeLibros() {
        
    }
}

Solución al ejercicio de programación en Hibernate

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en Hibernate 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 Hibernate

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 Hibernate

⭐⭐⭐⭐⭐
4.9/5 valoración