SerieRepository
SerieRepository
Oii Jonnathy.
Entendo que a explicação sobre o SerieRepository possa ter ficado um pouco confusa. Vou tentar simplificar.
SerieRepository?O SerieRepository é uma interface que estende o JpaRepository. Isso significa que ela herda vários métodos prontos para realizar operações básicas de CRUD (Create, Read, Update, Delete) no banco de dados.
SerieRepository?SerieRepository:package br.com.alura.screenmatch.repository;
import br.com.alura.screenmatch.model.Serie;
import org.springframework.data.jpa.repository.JpaRepository;
public interface SerieRepository extends JpaRepository<Serie, Long> {
}
JpaRepository<Serie, Long>: Aqui, Serie é a entidade que estamos manipulando e Long é o tipo do ID da entidade.SerieRepository?Pra usar o SerieRepository, precisamos injetá-lo em uma classe gerenciada pelo Spring. Isso é feito através da Injeção de Dependência com a anotação @Autowired.
SerieRepository na sua classe principal:import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ScreenmatchApplication implements CommandLineRunner {
@Autowired
private SerieRepository repositorio;
public static void main(String[] args) {
SpringApplication.run(ScreenmatchApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
// Exemplo de uso do repositorio para salvar uma série
Serie serie = new Serie();
serie.setTitulo("Gilmore Girls");
repositorio.save(serie);
// Exemplo de uso do repositorio para buscar todas as séries
List<Serie> series = repositorio.findAll();
series.forEach(System.out::println);
}
}
@Autowired: O Spring injeta automaticamente uma instância do SerieRepository na variável repositorio.repositorio.save(serie): Salva uma nova série no banco de dados.repositorio.findAll(): Recupera todas as séries do banco de dados.SerieRepository?O SerieRepository é uma interface, e interfaces não podem ser instanciadas diretamente. O Spring cria automaticamente uma implementação dessa interface e a injeta onde for necessário, graças à Injeção de Dependência.
Espero ter ajudado.
Um abraço e bons estudos.