Spring Boot

Consultas JPA

Consultas JPA: derivación por nombre de método, @Query con JPQL, consultas nativas, paginación, ordenamiento

30 preguntas de entrevista·
Mid-Level
1

¿Qué es JPQL?

Respuesta

JPQL (Java Persistence Query Language) es un lenguaje orientado a objetos que consulta entidades JPA en lugar de tablas de base de datos. A diferencia del SQL nativo, JPQL usa nombres de clases y propiedades, lo que mantiene la abstracción de objetos y facilita la portabilidad entre distintos sistemas de bases de datos. Conviene usar JPQL por defecto salvo que se requieran funcionalidades SQL específicas.

2

¿Qué anotación permite ejecutar una consulta JPQL o SQL personalizada?

Respuesta

La anotación @Query permite definir consultas personalizadas directamente en los repositories de Spring Data JPA. Puede contener JPQL por defecto o SQL nativo si el atributo nativeQuery se establece en true. Esta anotación ofrece más flexibilidad que los query methods derivados del nombre del método, especialmente para consultas complejas con joins o subconsultas.

3

¿Cómo vincular un parámetro de método a una @Query?

Respuesta

La anotación @Param permite nombrar explícitamente los parámetros utilizados en las consultas @Query. Este enfoque es más legible y robusto que usar posiciones indexadas, especialmente durante la refactorización del código. La anotación es obligatoria para los parámetros nombrados en JPQL y recomendada incluso para las consultas SQL nativas a fin de mejorar la mantenibilidad.

4

En JPQL, ¿qué cláusula permite filtrar los resultados?

5

¿Cuál es la diferencia principal entre JPQL y SQL nativo?

+27 preguntas de entrevista

Domina Spring Boot para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis