AD Tema 10 - SpringData

  1. ¿Cuál es el objetivo principal de Spring Data en una aplicación Spring Boot?
  2. ¿Qué interfaz suelen extender los repositorios de Spring Data JPA para disponer de operaciones CRUD básicas?
  3. En una entidad `Cliente`, queremos un repositorio que permita operaciones CRUD y paginación. ¿Qué firma de interfaz es la más típica?
  4. ¿Qué característica clave ofrece Spring Data con los “métodos derivados” (derived query methods)?
  5. Dado el método `List<Cliente> findByNombreContaining(String texto);` en un repositorio Spring Data JPA, ¿qué hace este método?
  6. ¿Qué anotación de Spring se usa habitualmente para definir una consulta personalizada en un repositorio cuando el nombre del método no es suficiente?
  7. En Spring Data JPA, ¿qué permite hacer la anotación `@Query` con el atributo `nativeQuery = true`?
  8. ¿Qué ventaja tiene el uso de interfaces de repositorio frente a escribir manualmente toda la capa DAO con `EntityManager`?
  9. En Spring Data, ¿qué interfaz proporciona métodos básicos como `findAll`, `save`, `deleteById` y se usa como base de otras interfaces?
  10. ¿Qué anotación se usa en Spring para indicar que un método (o clase) debe ejecutarse dentro de una transacción?
  11. Según la documentación de Spring Data JPA, ¿cómo se configuran por defecto las transacciones en los métodos heredados de `CrudRepository` / `JpaRepository`?
  12. Si definimos un método de consulta personalizado en un repositorio, por ejemplo `List<Pedido> findByEstado(String estado);`, ¿qué debemos tener en cuenta respecto a las transacciones?
  13. ¿Qué capa suele ser el mejor lugar para colocar los límites de transacción (`@Transactional`) en una aplicación Spring Boot con Spring Data?
  14. ¿Qué beneficio aporta marcar una transacción como `readOnly = true` en Spring?
  15. Dado un repositorio `PedidoRepository extends JpaRepository<Pedido, Long>`, ¿qué hace el método `findByClienteId(Long idCliente);` si se define siguiendo la convención de nombres?
  16. ¿Qué anotación se coloca normalmente en la interfaz de repositorio para que Spring la detecte como componente de acceso a datos?
  17. Para paginar resultados con Spring Data JPA, ¿qué tipo de parámetro se añade a la firma del método de repositorio?
  18. ¿Qué tipo de valor devuelven típicamente los métodos de repositorio que quieren ofrecer resultados paginados?
  19. En una consulta personalizada con `@Query("SELECT p FROM Pedido p WHERE p.fecha >= :inicio AND p.fecha <= :fin")`, ¿qué anotación se usa en los parámetros del método para enlazarlos con `:inicio` y `:fin`?
  20. ¿Qué práctica se considera adecuada al combinar Spring Data JPA con transacciones?

Cargando...