Package com.proyecto.jpa.repository


package com.proyecto.jpa.repository
Paquete que contiene los repositorios JPA para acceso a datos.

Descripción

Este paquete implementa el patrón Repository para abstraer el acceso a la base de datos. Todos los repositorios extienden de JpaRepository, proporcionando operaciones CRUD completas sin necesidad de implementación.

Repositorios Disponibles

Funcionalidades Implementadas

  • Métodos CRUD automáticos: save(), findById(), findAll(), delete(), etc.
  • Query Methods: Métodos generados por convención de nombres
  • Consultas JPQL: Consultas personalizadas con @Query
  • Consultas SQL nativas: Para casos específicos con nativeQuery=true
  • Paginación y ordenamiento: Heredado de PagingAndSortingRepository

Ejemplos de Uso

 // Inyectar repositorio
 @Autowired
 private ProductRepository productRepository;
 
 // Usar métodos automáticos
 Product product = productRepository.findById(1L).orElse(null);
 List<Product> all = productRepository.findAll();
 
 // Usar query methods
 List<Product> products = productRepository.findByCategoryId(1L);
 
 // Usar consultas personalizadas
 List<Product> topProducts = productRepository.findTopSellingProducts(5);
 

Ventajas del Patrón Repository

  • Abstrae la lógica de acceso a datos
  • Facilita las pruebas unitarias (mockeable)
  • Centraliza las consultas a la base de datos
  • Reduce el código boilerplate
  • Permite cambiar la implementación de persistencia fácilmente
Version:
1.0.0
Author:
Proyecto JPA
See Also:
  • JpaRepository
  • Query